OpenCV实现图像融合(addWeighted)
摘要:一、概述 案例:使用addWeighted将两张图片融合到一块 addWeighted(mat_first,alpha,mat_second,beta,gamma,dst);1.mat_first:第一张输入图片2.alpha:第一张图片的权重值3.mat_second:第二章输入图片4.beta:
阅读全文
posted @
2022-02-14 17:49
飘杨......
阅读(844)
推荐(0)
OpenCV手写像素取反
摘要:一、概述 使用opencv实现像素取反(自己手写) 原理:所谓的取反就是:每个像素都用255-当前像素值,得到的新的矩阵值就是我们的目标值。 做法:用255-当前像素值,替换掉当前位置的像素值即可 二、代码 QLabel* Chapter3Option::pixleReverse(const cha
阅读全文
posted @
2022-02-12 18:54
飘杨......
阅读(227)
推荐(0)
Qt选择图片并获取路径
摘要:一、概述 使用Qt选择图片文件并获取图片文件的路径 使用到的类:QFileDialog::getOpenFileName() 二、示例 QString filePath = QFileDialog::getOpenFileName(this, tr("选择视频"), ".", tr("Image F
阅读全文
posted @
2022-02-12 18:48
飘杨......
阅读(1375)
推荐(0)
Qt+OpenCV显示图片(Mat转QImage然后现在在QLabel上)
摘要:一、概述 此篇主要是记录一下如何将OpenCV集成得到Qt Creator中,并将OpenCV的Mat对象转换为QImage并使用qt的api显示图片 a.使用Qt Creator开发工具集成OpenCV,在.pro文件中配置环境即可,如下图所示 b.将Mat对象转为QImage对象并使用Qt显示出
阅读全文
posted @
2022-02-12 13:57
飘杨......
阅读(1740)
推荐(0)
Qt创建菜单的两种方式
摘要:一、概述 案例:1.使用Qt Creator 的UI设计界面创建菜单选项 2.使用代码创建菜单选项 二、代码示例&图例 1.使用Qt Creator创建菜单选项 2.使用代码创建menubar //创建菜单栏 QMenuBar *bar = this->menuBar(); this->setMen
阅读全文
posted @
2022-01-05 17:01
飘杨......
阅读(1412)
推荐(0)
Qt 创建一个自定义按钮
摘要:一、概述 案例:编写一个自定义按钮。要求:1.给按钮添加自定义背景 2.监听按钮点击事件 二、代码案例 1.创建一个类让其继承QWidget,点击下一步下一步最后完成 2.打开MyPushButton,让其继承QPushButton。如下所示: MyPushButton::MyPushButton(
阅读全文
posted @
2022-01-05 16:50
飘杨......
阅读(2217)
推荐(0)
Qt创建一个按钮,点击按钮关闭窗口
摘要:一、概述 开发工具:Qt Creator QApplication类简单介绍: QApplication应用程序类 1.管理图形用户界面应用程序的控制流和主要设置。 2.是Qt的整个后台管理的命脉它包含主事件循环,在其中来自窗口系统和其它资源的所有事件处理和调度。它也处理应用程序的初始化和结束,并且
阅读全文
posted @
2021-12-22 15:20
飘杨......
阅读(3235)
推荐(0)
使用libevent实现一个简单的tcp服务端
摘要:一、概述 1.特点: 1.事件驱动、高性能、轻量级、专注于网络 2.源代码精炼、易读 3.跨平台 4.支持多种I/O多路复用技术,如epoll 、poll 、select等 5.支持I/O和信号等事件 2.使用libevent 函数之前需要分配一个或者多个 event_base 结构体, 每个eve
阅读全文
posted @
2021-12-21 10:14
飘杨......
阅读(1072)
推荐(0)
使用C语言获取当前系统的libevent支持的异步IO模型有哪些
摘要:一、概述 案例:使用libevent获取当前系统支持异步IO模型有哪些(select/poll/epoll) 二、代码示例 //获取libevent支持的方法和当前系统使用的方法 #include <stdio.h> #include <stdlib.h> #include <string.h> #
阅读全文
posted @
2021-12-20 14:45
飘杨......
阅读(109)
推荐(0)
使用C语言实现本地socke通讯
摘要:一、概述 使用本地socket通讯可以实现进程之间的通讯。 相关函数描述如下: int socket(int domain, int type, int protocol); 函数说明: 创建本地域socket 函数参数: domain: AF_UNIX or AF_LOCAL type: SOCK
阅读全文
posted @
2021-12-20 10:58
飘杨......
阅读(1045)
推荐(0)
使用C语言进行udp通信
摘要:一、概述 UDP协议简单介绍: 1.UDP协议是用户数据报协议,面向无连接的、不稳定、不可靠、不安全的数据报传递 更像是是收发短信。 2.UDP传输不需要建立连接,传输效率更高,在稳定的局域网内环境相对可靠 3.UDP天然支持多客户端 C语言UDP函数介绍: ssize_t recvfrom(int
阅读全文
posted @
2021-12-20 10:14
飘杨......
阅读(2934)
推荐(0)
使用epoll实现聊天服务
摘要:一、概述 1.epoll函数及相关结构体介绍 多路IO-epoll 将检测文件描述符的变化委托给内核去处理, 然后内核将发生变化的文件描述符对应的事件返回给应用程序. (通俗点讲就是我们不用关心文件描述符的变化了,内核帮我们干了,并且内核把那些有变化的具体的文件描述符都会返回回来) 函数介绍: in
阅读全文
posted @
2021-12-15 10:43
飘杨......
阅读(273)
推荐(0)
使用poll实现聊天服务
摘要:一、概述 poll函数介绍: int poll(struct pollfd *fds, nfds_t nfds, int timeout); 函数说明: 跟select类似, 监控多路IO, 但poll不能跨平台. 参数说明: fds: 传入传出参数, 实际上是一个结构体数组 fds.fd: 要监控
阅读全文
posted @
2021-12-15 10:00
飘杨......
阅读(198)
推荐(0)
C语言select实现高并发服务器
摘要:一、概述 除了使用多线程或者多进程技术,我们是否还可以使用其他的方法来实现服务端连接多个客户端呢?答案是肯定的,那就是多路IO技术select。 多路IO技术: select, 同时监听多个文件描述符, 将监控的操作交给内核去处理, 数据类型fd_set: 文件描述符集合--本质是位图(关于集合可联
阅读全文
posted @
2021-12-13 14:32
飘杨......
阅读(1260)
推荐(0)
C多进程实现聊天服务
摘要:一、概述 案例:使用多进程实现聊天服务。要求:可以有多个客户端连接,且客户端发送什么数据服务端就回复什么数据 实现步骤: 1.创建监听文件描述符socket 2.绑定端口bind 3.监听端口listen 4.当接受到一个连接时开启一个子进程来实现,来实现和客户端的通讯(fork) 5.具体客户端通
阅读全文
posted @
2021-12-13 13:39
飘杨......
阅读(88)
推荐(0)
C语言实现多线程版聊天服务
摘要:一、概述 案例:C+pthread+socket实现多线程聊天服务,要求:服务端可以连接多个客户端,客户端发的消息,服务端再转发给客户端。 实现步骤: 1.创建监听文件描述符socket 2.绑定端口bind 3.监听端口listen 4.接收客户端请求,并在新的线程中执行(pthread+acce
阅读全文
posted @
2021-12-13 13:35
飘杨......
阅读(453)
推荐(0)
C使用信号量实现生产者消费者模型
摘要:一、概述 案例:编写一个案例代码,使用信号量(sem_t)来实现生产者消费者模型。 信号量:相当于多把锁,可以理解为加强版的互斥锁,其在一定程度上可以提高并发的效率 相关函数介绍: 相关函数 定义信号量 sem_t sem; int sem_init(sem_t *sem, int pshared,
阅读全文
posted @
2021-12-03 10:02
飘杨......
阅读(439)
推荐(0)
C实现读写锁
摘要:一、概述 案例:编写一个案例测试读写锁,要求:新建三个线程写,5个线程读,来测试读写锁。 读写锁的基本概念: 读写锁也叫共享-独占锁。当读写锁以读模式锁住时,它是以共享模式锁住的;当它以写模式锁住时,它是以独占模式锁住的。写独占,读共享。 读写锁的使用场合: 对数据结构读的次数远大于写的情况 读写锁
阅读全文
posted @
2021-12-01 14:42
飘杨......
阅读(2128)
推荐(0)
使用PThread+消息队列创建一个生产者消费者模型
摘要:一、概述 案例:使用pthread+消息队列(单链表环形队列) 实现生产者消费者模型 各个类的职责说明: 1.message_queue.cpp消息队列 ps:这个类最主要的方法有两个(这个类是线程安全的),一个是enqueueMessage(Message)向消息队列中放入数据,另一个是deque
阅读全文
posted @
2021-11-22 16:53
飘杨......
阅读(762)
推荐(0)
C使用sprintf函数拼接字符串或者字符串和其他数据类型拼接
摘要:一、概述 案例:1.将两个字符串拼接起来 2.将一个字符串和一个int类型的数据拼接起来 二、代码示例 1.拼接两个字符串 void test2(){ char str1[10]="洛洛杨"; char str2[10] = "我儿子"; char buffer[20]; sprintf(buffe
阅读全文
posted @
2021-11-22 16:20
飘杨......
阅读(2653)
推荐(0)