OpenCV设置ROI
摘要:1 #include "stdafx.h" 2 #include <iostream> 3 #include <opencv.hpp> 4 5 using namespace cv; 6 7 int _tmain(int argc, _TCHAR* argv[]) 8 { 9 Mat srcImag
阅读全文
posted @
2020-05-29 10:17
一杯清酒邀明月
阅读(511)
推荐(0) 编辑
光学像差理论
摘要:整篇文章一个公式都不写了,我们就只看图说话吧~ 什么是像差? 实际光学系统与理想光学系统之间存在很大的差异,即物空间的一个物点发出的光经实际光学系统后,不再成一理想像点,而是一个弥散斑,两者之间的差异称为像差。 打个比方: 在实际光通信系统中,完全消除码间串扰和噪声是十分困难的,但是从眼图上可以观察
阅读全文
posted @
2020-05-28 11:49
一杯清酒邀明月
阅读(2902)
推荐(0) 编辑
关于char是否能表示一个中文
摘要:char是可以表示中文的 这个问题点有3个考核点 1 char是多少位的2 java用的是什么方式表示字符3 Unicode是用多少位表示的 1的答案是16位的,2的答案是Unicode,3的答案是16位 值得注意的是,2的答案并不是utf-8 Unicode字符集有包含中文,并且char类型和Un
阅读全文
posted @
2020-05-27 11:45
一杯清酒邀明月
阅读(348)
推荐(0) 编辑
Qt 中文路径乱码问题解决 QTextCodec
摘要:在windows开发中,中文桌面版本的默认字符集是GBK2312,如果要显示文件路径的时候,路径中带中文,如果不经过转码处理,就会导致找不到文件。解决方法中的一个就是使用QTextCodec。 1 QString qslPath = QFileDialog::getOpenFileName(this
阅读全文
posted @
2020-05-27 11:44
一杯清酒邀明月
阅读(2003)
推荐(0) 编辑
视频格式
摘要:视频格式实质是视频编码方式,可以分为适合本地播放的本地影像视频和适合在网络中播放的网络流媒体影像视频两大类。尽管后者在播放的稳定性和播放画面质量上可能没有前者优秀,但网络流媒体影像视频的广泛传播性使之正被广泛应用于视频点播、网络演示、远程教育、网络视频广告等互联网信息服务领域。 视频编码格式 视频编
阅读全文
posted @
2020-05-27 10:03
一杯清酒邀明月
阅读(839)
推荐(0) 编辑
OpenCV VideoWriter保存摄像头视频、本地视频等
摘要:打开视频文件或摄像头视频需要使用Opencv中的VideoCapture类,保存视频或摄像头视频到本地磁盘,需要使用Opencv中的VideoWriter类。 VideoWriter类的一个常用构造方式如下: VideoWriter(const string& filename, int fourc
阅读全文
posted @
2020-05-26 15:27
一杯清酒邀明月
阅读(3066)
推荐(0) 编辑
GTK+介绍
摘要:GTK+(GIMP Toolkit)是一套源码以LGPL许可协议分发、跨平台的图形工具包。最初是为GIMP写的,已成为一个功能强大、设计灵活的一个通用图形库,是GNU/Linux下开发图形界面的应用程序的主流开发工具之一。并且,GTK+也有Windows版本和Mac OS X版。 详细说明 GTK+
阅读全文
posted @
2020-05-26 13:35
一杯清酒邀明月
阅读(765)
推荐(0) 编辑
Ubuntu安装GTK+教程
摘要:Step 1 修改清华源(修改完可提高下载速度) 先运行 sudo gedit /etc/apt/sources.list 替换文本内容,保存,退出。 # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 deb https://mirrors.tuna.tsinghua
阅读全文
posted @
2020-05-26 12:00
一杯清酒邀明月
阅读(6518)
推荐(1) 编辑
Qt 错误GL/gl.h: No such file or directory的解决方法
摘要:1、问题描述opencv第一次编译时,报错GL/gl.h: No such file or directory错误信息如下: /home/wrj/anaconda3/include/qt/QtGui/qopengl.h:139:22: fatal error: GL/gl.h: 没有那个文件或目录
阅读全文
posted @
2020-05-25 08:27
一杯清酒邀明月
阅读(5385)
推荐(0) 编辑
Qt 解决Could not start process "make" qmake_all问题
摘要:sudo apt-get install build-essential
阅读全文
posted @
2020-05-25 08:26
一杯清酒邀明月
阅读(2486)
推荐(0) 编辑
Qt 错误:QMainWindow: No such file or directory 解决方法
摘要:将 #include <QMainWindow> 改为 #include <QtWidgets> 并且在.pro文件中加上 1 QT += core gui 2 greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
阅读全文
posted @
2020-05-22 16:17
一杯清酒邀明月
阅读(7490)
推荐(0) 编辑
Qt 错误:QtGui/QApplication在Qt5没有这个文件
摘要:QtGui/QApplication换成QtWidgets/QApplication
阅读全文
posted @
2020-05-22 16:16
一杯清酒邀明月
阅读(1779)
推荐(0) 编辑
VMware Ubuntu 虚拟机安装 VMwareTools (VMware虚拟机如何与主机互相复制文件)
摘要:1、关闭虚拟机 2、CD-ROM开机连接取消对号 3、开启虚拟机 4、此时可能提示安装,点击即可 或者在VMware上方选择 :虚拟机 → 安装VMware Tools 5、虚拟机桌面会弹出相应安装包 6、双击打开如图 6、右键 → 复制到 7、其他位置 → 计算机 8、tmp 文件夹 9、选择 1
阅读全文
posted @
2020-05-20 15:36
一杯清酒邀明月
阅读(578)
推荐(0) 编辑
VMware15、Ubuntu19.04、安装教程(图文步骤)
摘要:1. 准备工作 1.1 下载与安装VMware15 下载链接:https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html 安装完成后,选择【帮助】,输入许可证密钥。产品密钥:CG392-4PX5
阅读全文
posted @
2020-05-20 15:12
一杯清酒邀明月
阅读(895)
推荐(0) 编辑
Qt 中文乱码解决办法 u8
摘要:Qt中经常遇到显示中文乱码问题。 有两种好的解决办法: 1.中英文翻译器(推荐) 2.在汉字前面加上u8 如下: 1 QString str = u8"测试"; 2 QAction *action1 = new QAction(str);
阅读全文
posted @
2020-05-18 12:00
一杯清酒邀明月
阅读(1364)
推荐(0) 编辑
C# typeof()实例详解
摘要:typeof(C# 参考) 用于获取类型的 System.Type 对象。typeof 表达式采用以下形式: System.Type type = typeof(int); 备注 若要获取表达式的运行时类型,可以使用 .NET Framework 方法 GetType,如下所示: 1 int i =
阅读全文
posted @
2020-05-16 23:27
一杯清酒邀明月
阅读(7139)
推荐(0) 编辑
C# as关键字
摘要:你能进到这篇文章…… 首先你可能明白类似于 1 double num=0; 2 int m=(int) num; 或者你明白 1 int m=209; 2 String str=m.toString(); 或者说你甚至见过 1 char m='c'; 2 int m=Integer.parseInt
阅读全文
posted @
2020-05-16 23:25
一杯清酒邀明月
阅读(240)
推荐(0) 编辑
C# break ,continue, return
摘要:C#编程语法中break ,continue, return这三个常用的关键字的学习对于我们编程开发是十分有用的,那么本文就向你介绍break ,continue, return具体的语法规范。 C#编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个
阅读全文
posted @
2020-05-16 00:08
一杯清酒邀明月
阅读(248)
推荐(0) 编辑
C# Bitmap 对索引像素格式的图片进行Setpixel(具有索引像素格式的图像不支持SetPixel) 解决方案
摘要:最近编写了一个验证码识别软件。其中对png、jpg图片进行二值化处理时,出现了错误:具有索引像素格式的图像不支持SetPixel解决方案。从字面上来看,这说明我对一个具有索引色的图片进行了直接RGB颜色设置,而索引色图片的颜色来自调色板,所以这操作是非法的。看见网上的解决方法都不靠谱,特写此文,以助
阅读全文
posted @
2020-05-15 23:53
一杯清酒邀明月
阅读(1493)
推荐(0) 编辑
C# Bitmap图片GetPixel 和 SetPixel 效率问题
摘要:在对Bitmap图片操作的时候,有时需要用到获取或设置像素颜色方法:GetPixel 和 SetPixel, 如果直接对这两个方法进行操作的话速度很慢,这里我们可以通过把数据提取出来操作,然后操作完在复制回去可以加快访问速度 其实对Bitmap的访问还有两种方式,一种是内存法,一种是指针法 1、内存
阅读全文
posted @
2020-05-15 23:22
一杯清酒邀明月
阅读(2550)
推荐(1) 编辑
C# TrackBar控件使用
摘要:Maximum属性:用来获取或设置TrackBar控件可表示的范围上限,即最大值。 Minimum属性:用来获取或设置TrackBar控件可表示的范围下限,即最小值。 SmallChange属性:用来获取或设置当滑块短距离移动时对Value属性进行增减的值。 Value属性:用来获取或设置滑块在跟踪
阅读全文
posted @
2020-05-15 22:35
一杯清酒邀明月
阅读(3847)
推荐(1) 编辑
C# PictureBox.SizeMode 属性
摘要:PictureBoxSizeMode.Normal: 默认情况下,在 Normal 模式中,Image 置于 PictureBox 的左上角,凡是因过大而不适合 PictureBox 的任何图像部分都将被剪裁掉。 PictureBoxSizeMode.StretchImage: 使用 Stretch
阅读全文
posted @
2020-05-15 20:53
一杯清酒邀明月
阅读(759)
推荐(0) 编辑
C# Bitmap 与 Image 之间的转换
摘要:1 Image img = this.pictureBox1.Image; 2 Bitmap map = new Bitmap(img); 3 Image img = Bitmap; Image和Bitmap类概述GDI+的Image类封装了对BMP、GIF、JPEG、PNG、TIFF、WMF(Wi
阅读全文
posted @
2020-05-15 20:52
一杯清酒邀明月
阅读(4102)
推荐(1) 编辑
C# Bitmap 加载图片
摘要:1 Bitmap pic = Image.FromFile("aa.png") as Bitmap; 2 Bitmap pic = new Bitmap(GetType(), "aa.png"); 3 Bitmap pic = new Bitmap("aa.png");
阅读全文
posted @
2020-05-15 20:36
一杯清酒邀明月
阅读(4150)
推荐(0) 编辑
C# int[,] 和 int[][]
摘要:int[] 一维数组 int[,] 二维数组 int[,,] 三维数组 int[] [] 交错数组 又称“数组的数组” 一维数组声明与初始化 声明: int[] a = new int[]; 声明与初始化: 1 int array1 = new int[] {1,2,3,4}; 2 int arra
阅读全文
posted @
2020-05-15 16:12
一杯清酒邀明月
阅读(1662)
推荐(1) 编辑
常用直方图匹配方法
摘要:常用的直方图匹配主要有:相关度匹配,卡方系数,相交系数,巴氏距离先从简单的讲起: 一般来说相交系数的方法速度较快,但是匹配不是很准确;要求较精准的匹配的话,用卡方和巴氏距离效果较好
阅读全文
posted @
2020-05-15 15:59
一杯清酒邀明月
阅读(983)
推荐(0) 编辑
Ping命令的七种用法
摘要:今天我们来看一下ping命令的的具体使用过程。 1. ping基本使用详解 在网络中ping是一个十分强大的TCP/IP工具。它的作用主要为: (1)用来检测网络的连通情况和分析网络速度; (2)根据域名得到服务器IP; (3)根据ping返回的TTL值来判断对方所使用的操作系统及数据包经过路由器数
阅读全文
posted @
2020-05-15 12:54
一杯清酒邀明月
阅读(1675)
推荐(0) 编辑
C# ??、 ?、 ?: 、?.、?[ ]
摘要:1. 可空类型修饰符(?) 引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空。 例如:string str=null; 是正确的,int i=null; 编译器就会报错。 为了使值类型也可为空,就可以使用可空类型,即用可空类型修饰符"?"来表示,表现形式为"T?" 例如:int?
阅读全文
posted @
2020-05-15 09:30
一杯清酒邀明月
阅读(1138)
推荐(0) 编辑
Qt Q_DECL_EXPORT的作用,生成.dll的同时生成.lib文件
摘要:#ifndef FitVCam_GLOBAL_H 1 #define FitVCam_GLOBAL_H 2 3 #include <QtCore/qglobal.h> 4 5 #ifdef FitVCam_LIB 6 # define FitVCam_EXPORT Q_DECL_EXPORT 7 #
阅读全文
posted @
2020-05-13 14:05
一杯清酒邀明月
阅读(2346)
推荐(1) 编辑
OpenCV imread 不能正常读取
摘要:1 src = imread("lena.bmp"); 2 if(!src.data) 3 { 4 printf("No data!--Exiting the program \n"); 5 return -1; 6 } 在配置opencv的时候,关联的库,若在debug模式下,关联的库有没带的话,
阅读全文
posted @
2020-05-13 13:26
一杯清酒邀明月
阅读(727)
推荐(0) 编辑
Qt QMutex使用详解
摘要:QMutex类提供的是线程之间的访问顺序化。QMutex的目的是保护一个对象、数据结构或者代码段,所以同一时间只有一个线程可以访问它。 例如,这里有一个方法打印给用户两条消息: 1 void DebugInfo() 2 { 3 qDebug("ABC"); 4 qDebug("DEF"); 5 }
阅读全文
posted @
2020-05-13 13:02
一杯清酒邀明月
阅读(7444)
推荐(0) 编辑
libpng warning: iCCP: cHRM chunk does not match sRGB
摘要:1 #include <opencv2/opencv.hpp> 2 using namespace cv; 3 int main() { 4 Mat img = imread("D:/test/1.jpg"); 5 imshow("ff",img); 6 waitKey(0); 7 return 0
阅读全文
posted @
2020-05-12 16:20
一杯清酒邀明月
阅读(12083)
推荐(1) 编辑
Qt tr()的作用
摘要:函数 tr()全名是 QObject::tr() 被它处理的 字符串可以 使用工具提 取出来翻译 成其他语言, 也就是做国际化使用。 只要记住,Qt 的最佳实践:如果你想让你的程序国际化的话,那么,所有用户可见的字符串都要使用 QObject::tr()! 但是,为什么我们没有写 QObject::
阅读全文
posted @
2020-05-09 15:53
一杯清酒邀明月
阅读(1310)
推荐(0) 编辑
Qt 关于QT_BEGIN_NAMESPACE宏的作用
摘要:最近注意到QT_BEGIN_NAMESPACE宏,具体如下: 1 #ifndef PREVIEWWINDOW_H 2 #define PREVIEWWINDOW_H 3 4 #include <QWidget> 5 6 QT_BEGIN_NAMESPACE 7 class QTextBrowser;
阅读全文
posted @
2020-05-09 15:38
一杯清酒邀明月
阅读(1868)
推荐(1) 编辑
Qt 串口收发数据
摘要:通过好几天的学习,终于写出了一个用于串口通信的上位机。下面开始介绍串口类的使用。 首先,QT5是自带QSerialPort这个类的,使用时需要在pro文件里面添加一行: QT += serialport 然后直接引用头文件就可以使用了。 #include <QtSerialPort/QSerialP
阅读全文
posted @
2020-05-08 16:41
一杯清酒邀明月
阅读(4265)
推荐(0) 编辑
Qt QSerialPort串口通讯的时候,readyRead()信号不产生的解决方案
摘要:在串口通讯的时候,需要设置"控制管脚状态". 所以应该这样写: 1 if(serial.open(QIODevice::ReadWrite)) 2 { 3 serial.setDataTerminalReady(true); 4 }
阅读全文
posted @
2020-05-08 14:07
一杯清酒邀明月
阅读(3428)
推荐(1) 编辑
Qt QSerialPort串口 接收数据 QIODevice::readyRead()
摘要:QSerialPort 负责具体的串口操作。选定串口后,要先打开串口,才能设置波特率等参数。这些参数都设置好了就可以使用了。最基本的操作无非是read() 和 write()。需要注意的是这两个操作都是非阻塞的。 另外有一个重要的signal 也需要用到,那就是 void QIODevice::re
阅读全文
posted @
2020-05-08 14:06
一杯清酒邀明月
阅读(10508)
推荐(3) 编辑
Qt QString与QByteArray互相转换的方法
摘要:// QString转QByteArray方法 1 //Qt5.3.2 2 QString str("hello"); 3 QByteArray bytes = str.toUtf8(); // QString转QByteArray方法1 4 5 QString str("hello"); 6 QB
阅读全文
posted @
2020-05-08 14:03
一杯清酒邀明月
阅读(4846)
推荐(0) 编辑
Qt QString字符串分割、截取
摘要:在做项目中不可避免的会使用到一串字符串中的一段字符,因此常常需要截取字符串。 有两种方式可以解决这个问题: 方法一:QString分割字符串: QString date=dateEdit.toString("yyyy/MM/dd"); QStringList list = date.split("/
阅读全文
posted @
2020-05-08 13:57
一杯清酒邀明月
阅读(33705)
推荐(2) 编辑
Qt 从QString中提取出数字
摘要:比如QString str = “123你好456你好”我们要从这个str中提取出“123456” 1 QString str = “123你好456你好”; 2 QString tmp; 3 for(int j = 0; j < str.length(); j++) 4 { 5 if(this->
阅读全文
posted @
2020-05-08 13:56
一杯清酒邀明月
阅读(10792)
推荐(0) 编辑
Qt 让窗口屏幕居中的方法
摘要:要让主窗口居中,只需修改main.cpp: 1 #include "mainwindow.h" 2 #include <QApplication> 3 #include <qdesktopwidget.h> 4 5 int main(int argc, char *argv[]) 6 { 7 QAp
阅读全文
posted @
2020-05-07 16:32
一杯清酒邀明月
阅读(1834)
推荐(0) 编辑
Qt .pro和.qrc创建及介绍
摘要:一、.pro文件创建及介绍 一般情况下,在vs中新建的Qt项目是没有.qrc文件的,这时我们可以点击上方的Qt VS Tools,如下图所示,选择Create Basic .pro File,便可以生成.pro文件。 后缀为.pro的文件是项目的管理文件,它主要用于记录项目的一些设置,以及包含文件的
阅读全文
posted @
2020-05-07 15:19
一杯清酒邀明月
阅读(1761)
推荐(0) 编辑
Qt QUndoStack、QUndoCommand(实现撤回和回撤)
摘要:用到的类: 1 QUndoStack: 一个存放 QUndoCommand 命令的栈. 2 QUndoCommand:The QUndoCommand class is the base class of all commands stored on a QUndoStack. 3 QUndoVie
阅读全文
posted @
2020-05-06 14:40
一杯清酒邀明月
阅读(6491)
推荐(0) 编辑
Qt QMdiArea和QMdiSubWindow的基本用法
摘要:大多数复杂的程序,都使用MDI框架,在Qt designer中可以直接将控件MDI Area拖入使用。 QMdiArea一般使用于主窗口中,用于容纳多个子窗口QMdiSubWindow 代码如下: mainwindow.h 1 #ifndef MAINWINDOW_H 2 #define MAINW
阅读全文
posted @
2020-05-06 14:32
一杯清酒邀明月
阅读(2351)
推荐(0) 编辑
Qt QMimeData类
摘要:QMimeData类提为数据提供一个容器,用来记录关于MIME类型数据的信息QMimeData常用来描述保存在剪切板里信息,或者拖拽原理QMimeData对象把它所保存的信息和正确的MIME类型连接起来来保证信息可以被安全的在应用程序之间转移 ,或者在同一个应用程序之间拷贝QMimeData对象通产
阅读全文
posted @
2020-05-06 14:30
一杯清酒邀明月
阅读(2014)
推荐(1) 编辑
OpenCV 霍夫变换-直线 HoughLinesP
摘要:霍夫直线变换介绍Hough Line Transform用来做直线检测前提条件 – 边缘检测已经完成平面空间到极坐标空间转换霍夫线变换的原理众所周知, 一条直线在图像二维空间可由两个变量表示. 如:<1>在笛卡尔坐标系: 可由参数: 斜率和截距(m,b)表示。<2>在极坐标系: 可由参数: 极径和极
阅读全文
posted @
2020-05-04 15:59
一杯清酒邀明月
阅读(11402)
推荐(1) 编辑
OpenCV 霍夫圆检测 HoughCircles
摘要:霍夫圆变换 解释: 霍夫圆变换的基本思路是认为图像上每一个非零像素点都有可能是一个潜在的圆上的一点,跟霍夫线变换一样,也是通过投票,生成累积坐标平面,设置一个累积权重来定位圆。 在笛卡尔坐标系中圆的方程为: 其中(a,b)是圆心,r是半径,也可以表述为: 所以在abr组成的三维坐标系中,一个点可以唯
阅读全文
posted @
2020-05-04 15:08
一杯清酒邀明月
阅读(1528)
推荐(0) 编辑
OpenCV blob(斑点)特征,SimpleBlobDetector
摘要:OpenCV中提供了SimpleBlobDetector的特征点检测方法,正如它的名称,该算法使用最简单的方式来检测斑点类的特征点。下面我们就来分析一下该算法。 首先通过一系列连续的阈值把输入的灰度图像转换为一个二值图像的集合,阈值范围为[T1,T2],步长为t,则所有阈值为: T1,T1+t,T1
阅读全文
posted @
2020-05-04 14:18
一杯清酒邀明月
阅读(4954)
推荐(0) 编辑
OpenCV 图像缩放cv::resize 各种插值方式的比较
摘要:1. resize函数说明 OpenCV提供了resize函数来改变图像的大小,函数原型如下: void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=I
阅读全文
posted @
2020-05-04 10:46
一杯清酒邀明月
阅读(13924)
推荐(1) 编辑
OpenCV 图像旋转,镜像翻转 flip、transpose
摘要:旋转 1 Mat rot_img(Mat src, int idx) { 2 //旋转90度 3 if (idx == 1) { 4 transpose(src, src); 5 flip(src, src, 1); 6 return src; 7 } 8 //旋转180度 9 else if (i
阅读全文
posted @
2020-05-04 10:01
一杯清酒邀明月
阅读(4957)
推荐(1) 编辑
OpenCV 图像翻转 cv::flip()
摘要:具体调用形式如下: 1 void cv::flip( 2 cv::InputArray src, // 输入图像 3 cv::OutputArray dst, // 输出 4 int flipCode = 0 // >0: 沿y-轴翻转, 0: 沿x-轴翻转, <0: x、y轴同时翻转 5 ); 测
阅读全文
posted @
2020-05-04 09:48
一杯清酒邀明月
阅读(887)
推荐(0) 编辑
OpenCV 图像处理 (线性滤波,非线性滤波 - 方框滤波、均值滤波、高斯滤波、中值滤波,双边滤波)
摘要:1 线性滤波:方框滤波、均值滤波、高斯滤波 1.1方框滤波(box Filter) 1.2均值滤波(blur函数) 缺陷: 1.3高斯滤波(GaussianBlur函数) 1.4线性滤波核心API函数 boxFilter 1 #include "opencv2/core/core.hpp" 2 #i
阅读全文
posted @
2020-05-03 15:49
一杯清酒邀明月
阅读(657)
推荐(0) 编辑
OpenCV 图像处理(形态学滤波:腐蚀与膨胀,开运算、闭运算、形态学梯度、顶帽、黑帽)
摘要:腐蚀与膨胀 膨胀(求局部最大值)(dilate函数) 1 #include <opencv2/core/core.hpp> 2 #include <opencv2/highgui/highgui.hpp> 3 #include <opencv2/imgproc/imgproc.hpp> 4 #inc
阅读全文
posted @
2020-05-03 15:43
一杯清酒邀明月
阅读(619)
推荐(0) 编辑
OpenCV adaptiveThreshold(自适应阈值)
摘要:1 void adaptiveThreshold(InputArray src, 2 OutputArray dst, 3 double maxValue, 4 int adaptiveMethod, 5 int thresholdType, 6 int blockSize, 7 double C)
阅读全文
posted @
2020-05-03 15:27
一杯清酒邀明月
阅读(4099)
推荐(0) 编辑
OpenCV 固定阈值门限分割 cv::threshold
摘要:固定阈值门限分割 函数 对输入单通道矩阵逐像素进行固定阈值分割。典型应用是从灰度图像获取二值图像,或消除灰度值过大或过小的噪声。有5种阈值分割类型,由参数thresholdType决定。 double threshold(InputArray src, OutputArray dst,double
阅读全文
posted @
2020-05-03 15:13
一杯清酒邀明月
阅读(528)
推荐(0) 编辑
OpenCV 图像二值化 threshold
摘要:一:什么是二值图像 彩色图像:三个通道0-255,0-255,0-255,所以可以有2^24位空间 灰度图像:一个通道0-255,所以有256种颜色 二值图像:只有两种颜色,黑和白,1白色,0黑色 二:图像二值化 (一)先获取阈值 (二)根据阈值去二值化图像 (三)OpenCV中的二值化方法 四)补
阅读全文
posted @
2020-05-03 15:11
一杯清酒邀明月
阅读(1628)
推荐(0) 编辑
C++ pow()函数
摘要:函数名称: pow() 函数原型: double pow( double x, double y ); 函数功能: 计算x的y次幂 所属文件: <math.h> pow(x , y) ,x的y次幂
阅读全文
posted @
2020-05-03 15:03
一杯清酒邀明月
阅读(3036)
推荐(2) 编辑
Marr-Hildreth 边缘检测 OpenCV C++实现
摘要:算法原理 C++代码实现 1 Mat MarrEdgeDetection(Mat src, int kernelDiameter, double sigma) { 2 int kernel_size = kernelDiameter / 2; 3 Mat kernel(kernelDiameter,
阅读全文
posted @
2020-05-03 14:10
一杯清酒邀明月
阅读(680)
推荐(0) 编辑
OpenCV 边缘检测 Canny
摘要:1 #include<opencv2/core/core.hpp> 2 #include<opencv2/highgui/highgui.hpp> 3 #include<opencv2/imgproc/imgproc.hpp> 4 #include<opencv2/objdetect.hpp> 5
阅读全文
posted @
2020-05-03 13:41
一杯清酒邀明月
阅读(366)
推荐(0) 编辑
OpenCV Canny()函数
摘要:Canny函数利用Canny算法来进行图像的边缘检测。C++: void Canny(InputArray image,OutputArray edges, double threshold1, double threshold2, int apertureSize=3,bool L2gradien
阅读全文
posted @
2020-05-03 13:40
一杯清酒邀明月
阅读(3163)
推荐(0) 编辑
OpenCV Sobel()函数
摘要:1 C++: void Sobel ( 2 InputArray src,//输入图 3 OutputArray dst,//输出图 4 int ddepth,//输出图像的深度 5 int dx, 6 int dy, 7 int ksize=3, 8 double scale=1, 9 doubl
阅读全文
posted @
2020-05-03 13:38
一杯清酒邀明月
阅读(2305)
推荐(0) 编辑
OpenCV 边缘检测 Sobel
摘要:1 // 【头文件包含部分】 2 // 描述:包含程序所依赖的头文件 3 // 4 #include <opencv2/opencv.hpp> 5 #include<opencv2/highgui/highgui.hpp> 6 #include<opencv2/imgproc/imgproc.hpp
阅读全文
posted @
2020-05-03 13:37
一杯清酒邀明月
阅读(425)
推荐(0) 编辑
OpenCV 边缘检测 Laplacian
摘要:1 // 【头文件包含部分】 2 // 描述:包含程序所依赖的头文件 3 // 4 #include <opencv2/opencv.hpp> 5 #include<opencv2/highgui/highgui.hpp> 6 #include<opencv2/imgproc/imgproc.hpp
阅读全文
posted @
2020-05-03 13:34
一杯清酒邀明月
阅读(311)
推荐(0) 编辑
OpenCV 边缘检测 Scharr
摘要:1 // 【头文件包含部分】 2 // 描述:包含程序所依赖的头文件 3 // 4 #include <opencv2/opencv.hpp> 5 #include<opencv2/highgui/highgui.hpp> 6 #include<opencv2/imgproc/imgproc.hpp
阅读全文
posted @
2020-05-03 13:32
一杯清酒邀明月
阅读(446)
推荐(0) 编辑
OpenCV 形态学变换 morphologyEx函数
摘要:高级形态学变换:开运算:先腐蚀,再膨胀,可清除一些小东西(亮的),放大局部低亮度的区域闭运算:先膨胀,再腐蚀,可清除小黑点形态学梯度:膨胀图与腐蚀图之差,提取物体边缘顶帽:原图像-开运算图,突出原图像中比周围亮的区域黑帽:闭运算图-原图像,突出原图像中比周围暗的区域 腐蚀用于分割(isolate)独
阅读全文
posted @
2020-05-03 12:55
一杯清酒邀明月
阅读(2809)
推荐(0) 编辑
OpenCV Sobel算子
摘要:卷积应用-图像边缘提取 卷积应用-图像边缘提取 边缘是什么 – 是像素值发生跃迁的地方,是图像的显著特征之一, 在图像特征提取、对象检测、模式识别等方面都有重要的作用。 如何捕捉/提取边缘 – 对图像求它的一阶导数 - delta = f(x) – f(x-1), delta越大,说明像素在X方向变
阅读全文
posted @
2020-05-03 12:50
一杯清酒邀明月
阅读(289)
推荐(0) 编辑
OpenCV getStructuringElement函数
摘要:getStructuringElement函数会返回指定形状和尺寸的结构元素。 Mat getStructuringElement(int shape, Size esize, Point anchor = Point(-1, -1)); 这个函数的第一个参数表示内核的形状,有三种形状可以选择。 矩
阅读全文
posted @
2020-05-03 12:47
一杯清酒邀明月
阅读(2480)
推荐(0) 编辑
OpenCV Laplacian 拉普拉斯算子
摘要:Laplace算子和Sobel算子一样,属于空间锐化滤波操作。起本质与前面的Spatial Filter操作大同小异,下面就通过Laplace算子来介绍一下空间锐化滤波,并对OpenCV中提供的Laplacian函数进行一些说明。 数学原理 离散函数导数 离散函数的导数退化成了差分,一维一阶差分公式
阅读全文
posted @
2020-05-03 10:35
一杯清酒邀明月
阅读(3490)
推荐(0) 编辑