Opencv
年少2
帅帅帅帅帅帅帅帅帅帅帅帅帅帅
展开
-
图像处理之HOG特征提取
图像处理之HOG特征提取算法HOG(Histogram of Oriented Gradient)特征在对象识别与模式匹配中是一种常见的特征提取算法,是基于本地像素块进行特征直方图提取的一种算法,对象局部的变形与光照影响有很好的稳定性,最初是用HOG特征来来识别人像,通过HOG特征提取+SVM训练,可以得到很好的效果,OpenCV已经有了。HOG特征提取的大致流程如下:转载 2017-07-14 17:07:29 · 1707 阅读 · 0 评论 -
图像处理之高斯模糊
高斯模糊是一种两维的卷积模糊操作,在图像完成高斯模糊相对于均值模糊来说,计算量会增加,但是高斯模糊可以实现一些特殊效果,特别是在图像噪声(非椒盐噪声)消去方面,更是有着非常好的效果。一维高斯公式如下:其中x是制定[-n,n]范围的整数,sigma代表标准方差。通常取值为1.一维高斯函数Java代码如下:private float[] ge转载 2017-06-13 14:54:53 · 1195 阅读 · 0 评论 -
图像处理------快速均值模糊(Box Blur)
图像模糊的本质, 从数字信号处理的角度看,图像模糊就要压制高频信号保留低频信号,压制高频的信号的一个可选择的方法就是卷积滤波。选择一个低频滤波器,对图像上的每个像素实现低频滤波,这样整体效果就是一张数字图像更加的模糊,显示更少的细节信息。 传统的卷积模糊计算量巨大,程序效率比较低,基于滑动窗口的Box Blur是一种快速模糊方法,其结果近似于卷积模糊的结果。我没证明转载 2017-06-13 11:24:45 · 2899 阅读 · 0 评论 -
图像处理------图像加噪
图像噪声源于现实世界中数字信号总会受到各种各样的干扰,最终接受的图像和源于的数字信号之间总是存在一定的差异,对于图像噪声,使用均值滤波和中值滤波来消除图像噪声的做法已经是很常见的图像消噪手段。 一:图像加噪原理1. 椒盐噪声(Salt And Pepper Noise)椒盐噪声是一种因为信号脉冲强度引起的噪声,信噪比(Signal Noise转载 2017-06-13 11:11:54 · 1268 阅读 · 0 评论 -
图像处理------理解卷积
一:什么是卷积离散卷积的数学公式可以表示为如下形式:f(x) = - 其中C(k)代表卷积操作数,g(i)代表样本数据, f(x)代表输出结果。举例如下:假设g(i)是一个一维的函数,而且代表的样本数为G = [1,2,3,4,5,6,7,8,9]假设C(k)是一个一维的卷积操作数, 操作数为C=[-1,0,1]则输出结果f(x)可以表示为 F=[转载 2017-06-13 10:57:05 · 452 阅读 · 0 评论 -
图像处理------颜色梯度变化 (Color Gradient)
有过UI设计经验的一定对2D图形渲染中的Color Gradient 或多或少有些接触,很多编程语言也提供了Gradient的接口,但是想知道它是怎么实现的嘛? 本文介绍三种简单的颜色梯度变化算法,就可以很容易实现常见的梯度变化算法三种都要求提供两个参数即起始颜色RGB值, 最终颜色RGB的值。 垂直梯度颜色变化,效果如下:水平梯转载 2017-06-13 10:32:10 · 9636 阅读 · 0 评论 -
图像处理之噪声之美 - 随机噪声产生
数学原理:首先看两张图片,大小均为256 * 256个像素, 第一张是纯蓝色图一:第二张是加有随机噪声的蓝色 图二:产生随机噪声的算法简单的不能再简单了假设RGB的R与G颜色分量均为零, 则 Blue = 255 * Math.Random() 随机数的取值范围在[0, 1]之间, 程序的核心代码如下:转载 2017-06-13 10:08:41 · 5684 阅读 · 0 评论 -
图像处理之透明混合 - Alpha Blending效果
基本原理:图像的透明混合有个专属名词– Alpha Blending 对任意两张图像可以合成为一张图像,合成图像的像素取值根据数学公式:RGB3 = (1- a) * RGB1 + a * RGB2其中a为混合透明度取值范围[0, 1]之间, RGB3为目标像素值, RGB1与RGB2的值分别来自两张不同的图像。两张源图像分别为:转载 2017-06-12 15:18:41 · 1536 阅读 · 0 评论 -
图像放缩之双立方插值
图像放缩之双立方插值一:数学原理如果已知一个函数f(x)以及它在x=0,x=1处的导数,那么函数可以在[0,1]之间插值,当函数表达为三次多项式时我们称之谓立方插值。一个三次多项式及其导数: f(x) =ax^3 +bx^2 + cx + d f’(x)=3ax^2 + 2bx +c多项式在x=0转载 2017-06-12 11:20:20 · 1628 阅读 · 0 评论 -
图像处理之移动模糊
- created by gloomyfish卷积模糊或者卷积平滑滤波,可以消除图像噪声,也可以产生一些常见的图像模糊特效,但是移动模糊特效也是基于卷积,相比于Box Blur, Gaussian Blur的算法,移动模糊只需要完成一次的一维卷积,所不同的是一维卷积的完成,要基于一定的角度,而不是只是在水平和垂直两个方向上。移动模糊的一维卷积要考虑一下三个因素:转载 2017-06-13 22:40:13 · 1840 阅读 · 0 评论 -
图像处理之应用卷积一实现噪声消去
- created by gloomyfish讨论如何使用卷积作为数学工具来处理图像,实现图像的滤波,其方法包含以下几种,均值滤波,中值滤波,最大最小值滤波,关于什么是卷积以及理解卷积在图像处理中作用参见这里–http://blog.csdn.net/jia20003/article/details/7038938 均值滤波:均值滤波,是图像处理转载 2017-06-14 10:21:21 · 1225 阅读 · 0 评论 -
图像处理之应用卷积– 轧花与边缘检测
- created by gloomyfish关于什么是卷积,如何理解卷积 参见这里:http://blog.csdn.net/jia20003/article/details/7038938一:轧花轧花算子(embossfilter)对一幅数字图像一阶微分结果即可得到轧花效果,根据不同的算子,轧花又可以分为凹效果与凸效果两种。两个个最简单的轧花转载 2017-06-14 10:35:07 · 291 阅读 · 0 评论 -
图像处理之计算二值连通区域的质心
图像处理之计算二值连通区域的质心一:几何距(Geometric Moments)知识与质心寻找原理1. Image Moments是图像处理中非常有用的算法,可以用来计算区域图像的质心,方向等几何特性,同时Mpq的高阶具有旋转不变性,可以用来实现图像比较分类,正是因为Moments有这些特性,很多手绘油画效果也会基于该算法来模拟实现。它的数学表达为:转载 2017-07-14 16:43:38 · 3788 阅读 · 0 评论 -
图像处理之霍夫变换圆检测算法
图像处理之霍夫变换圆检测算法之前写过一篇文章讲述霍夫变换原理与利用霍夫变换检测直线, 结果发现访问量还是蛮多,有点超出我的意料,很多人都留言说代码写得不好,没有注释,结构也不是很清晰,所以我萌发了再写一篇,介绍霍夫变换圆检测算法,同时也尽量的加上详细的注释,介绍代码结构.让更多的人能够读懂与理解.一:霍夫变换检测圆的数学原理根据极转载 2017-07-14 16:36:27 · 3326 阅读 · 0 评论 -
图像处理之Hessian矩阵提取关键点
- created by gloomyfish一:大致的算法流程1. 对每个像素点计算图像在X方向Y方向的二阶偏导数,计算图像的XY方向的导数2. 根据第一步的计算结果,有Hessian Matrix计算D(h) = Ixx*Iyy - Ixy*Ixy其中Ixx表示X方向的二阶偏导数Iyy表示Y方向的二阶偏导数Ixy表XY方向的二阶导转载 2017-07-14 16:23:40 · 4960 阅读 · 2 评论 -
图像处理之二值膨胀及应用
图像处理之二值膨胀及应用基本原理:膨胀是图像形态学的两个基本操作之一,另外一个是腐蚀操作。最典型的应用是在二值图像中使用这两个基本操作,是很多识别技术中重要的中间处理步骤。在灰度图像中根据阈值同样可以完成膨胀与腐蚀操作。对一幅二值图像f(x,y)完成膨胀操作,与对图像的卷积操作类似,要有个操作数矩阵,最常见的为3X3的矩阵,与卷积操作不同的,是如果矩阵中的像转载 2017-06-14 14:48:45 · 584 阅读 · 0 评论 -
图像分析之直方图分析
- created by gloomyfish图像分析之强度直方图分析直方图介绍强度直方图图形化显示不同的像素值在不同的强度值上的出现频率,对于灰度图像来说强度范围为[0~255]之间,对于RGB的彩色图像可以独立显示三种颜色的强度直方图。强度直方图是用来寻找灰度图像二值化阈值常用而且是有效的手段之一,如果一幅灰度图像的直方图显示为两个波峰,则二转载 2017-06-14 14:16:07 · 2670 阅读 · 0 评论 -
基于像素的皮肤检测技术
基于像素的皮肤检测技术介绍一种基于颜色空间的皮肤检测技术,可以检测亚洲人种与白人的皮肤,皮肤检测人脸识别的基础,也是很多人像识别技术的基础操作,在实际应用中还是非常有用的。 基于像素的皮肤检测主要是寻找正确的颜色空间几何,图像处理中,常见的颜色空间有如下几种1. RGB色彩空间 – R代表单色红,G代表单色绿,B代表单色蓝2.转载 2017-06-14 11:10:02 · 752 阅读 · 0 评论 -
图像处理之特殊灰度算法技巧
- created by gloomyfish图像处理之特殊灰度算法技巧介绍几种特殊的灰度算法滤镜,将彩色图像转换为灰度图像。其中涉及到的有基于阈值的图像二值化,弗洛伊德.斯坦德伯格抖动算法,基于阈值的部分灰度化 基础知识- 怎么把RGB转换为单色的[0 ~256]之间的灰度,最常用的转换公式如下:Gray = 0.299 * red转载 2017-06-14 10:52:55 · 2010 阅读 · 0 评论 -
图像处理之应用卷积– 轧花与边缘检测
- created by gloomyfish图像处理之调整亮度与对比度 很多时候,一张图像被过度曝光显得很白,或者光线不足显得很暗,有时候背景跟图像人物也观察不清楚,这个时候可以通过调节图像的两个基本属性-亮度与对比度来获得整体效果的提升,从而得到质量更高的图片。 基本原理:图像亮度本质上图像中每个像素的亮度,每个像素的亮度本质转载 2017-06-14 10:42:59 · 272 阅读 · 0 评论 -
图像放缩之双线性内插值
一:数学原理在临近点插值的数学基础上,双线性插值,不是简单copy源像素的值,而是获取四个最邻近目标像素的像素值乘以权重系数,简单的数学公式可以表示为:D(x, y) = S(j, k) * a + S(j+1, k) *b + S(j+1,k+1) * c + S(j, K+1) * d 公式一 问题转化如何提取源像素的中四个临近点转载 2017-06-12 10:37:14 · 359 阅读 · 0 评论 -
图像处理之二值腐蚀
图像处理之二值腐蚀概述:腐蚀是图像形态学的两个基本操作之一,另外一个是膨胀(Dilate)。二值图像上的腐蚀是腐蚀最典型的运用,但是腐蚀操作同样可以运用于灰度图像。二值图像腐蚀操作最基本的效果是腐蚀图像中前景色区域的边缘。使得前景图像区域变小,前景图像内部的背景区域被放大。 基本原理:腐蚀操作要求有待处理的2D图像F(x,y)以及操作数矩阵(转载 2017-07-12 15:32:02 · 1251 阅读 · 0 评论 -
三维点云配准
1、首先,点云配准过程,就是求一个两个点云之间的旋转平移矩阵(rigid transform or euclidean transform 刚性变换或欧式变换),将源点云(source cloud)变换到目标点云(target cloud)相同的坐标系下。可以表示为以下的方程:其中就是target cloud与source cloud中的一对对应点。而我们要求的就是其中的R与T旋转转载 2017-04-20 14:27:20 · 21467 阅读 · 3 评论 -
摄像机模型与标定——三个坐标系及其之间关系
1、图像坐标系如图2.1所示,以图像左上角为原点建立以像素为单位的直接坐标系u-v。像素的横坐标u与纵坐标v分别是在其图像数组中所在的列数与所在行数。(在OpenCV中u对应x,v对应y)由于(u,v)只代表像素的列数与行数,而像素在图像中的位置并没有用物理单位表示出来,所以,我们还要建立以物理单位(如毫米)表示的图像坐标系x-y。将相机光轴与图像平面的交点(一般位于图像平转载 2016-06-16 21:40:03 · 7736 阅读 · 0 评论 -
Opencv 无按钮设置
#include #include int g_switch_value = 0;void switch_on_function() { } void switch_off_function() { }void switch_callback(int position){ if(position == 0){ switc原创 2015-10-27 09:13:08 · 525 阅读 · 0 评论 -
opencv 两幅图像融合
#include #include int main(){ IplImage *src1,*src2; src1 = cvLoadImage("pic.jpg",1); src2 = cvLoadImage("pic1.jpg",1); int x=0; int y=0; int width=400; int height=600;原创 2015-10-26 23:18:28 · 1162 阅读 · 0 评论 -
Opencv 鼠标事件GUI
#include #include void my_mouse_callback(int event,int x,int y,int flags,void* param);//定义鼠标回调函数CvRect box;//定义一个图像区域bool drawing_box = false;//画框标志位void draw_box(IplImage* i原创 2015-10-26 23:17:41 · 475 阅读 · 0 评论 -
Opecv Iplimage
#include "cv.h"#include"highgui.h" int main(int argc, char** argv) {IplImage* src = cvLoadImage("pic.jpg");//读取照片int x = 10;int y = 10;int width = 200;int height = 200;int add = 250;IplIma原创 2015-10-24 20:26:25 · 387 阅读 · 0 评论 -
要让读者在不看任何数学公式的情况下理解傅里叶分析
这篇文章的核心思想就是:要让读者在不看任何数学公式的情况下理解傅里叶分析。傅里叶分析不仅仅是一个数学工具,更是一种可以彻底颠覆一个人以前世界观的思维模式。但不幸的是,傅里叶分析的公式看起来太复杂了,所以很多大一新生上来就懵圈并从此对它深恶痛绝。老实说,这么有意思的东西居然成了大学里的杀手课程,不得不归咎于编教材的人实在是太严肃了。(您把教材写得好玩一点会死吗?会死吗?)所以我一直想转载 2015-10-16 20:57:31 · 446 阅读 · 0 评论 -
图像处理之像素格效果
- created by gloomyfish图像中的像素格效果是最常见的图像特效,可以隐藏或者模糊一些不想被显示出来的图像细节,是常用的图像处理手段。 像素格效果的算法其实非常的简单,只是对图像进行块扫描,求出每个像素块的平均RGB值,然后赋值到块中的每个像素点,最后输出处理以后的图像,而像素块的扫描有点类似卷积的处理。具体算法转载 2017-07-12 15:46:12 · 700 阅读 · 0 评论 -
图像处理之图像梯度效果
- created by gloomyfish图像处理之图像梯度效果基本思想:利用X方向与Y方向分别实现一阶微分,求取振幅,实现图像梯度效果。关于如何计算图像一阶微分参见这里:http://blog.csdn.net/jia20003/article/details/7562092使用的两种微分算子分别为Prewitt与Sobel,其中S转载 2017-07-12 15:54:34 · 5769 阅读 · 1 评论 -
图像处理之霍夫变换(直线检测算法)
- created by gloomyfish图像处理之霍夫变换(直线检测算法)霍夫变换是图像变换中的经典手段之一,主要用来从图像中分离出具有某种相同特征的几何形状(如,直线,圆等)。霍夫变换寻找直线与圆的方法相比与其它方法可以更好的减少噪声干扰。经典的霍夫变换常用来检测直线,圆,椭圆等。 霍夫变换算法思想:以直线检测为例,每个像素坐转载 2017-07-12 16:55:57 · 2856 阅读 · 0 评论 -
图像处理之调整亮度与饱和度
- created by gloomyfish图像处理之半调色融合图像处理中错误扩散,抖动算法在在数字半调技术中有着重要的应用,是报纸,黑白打印机等输出设备常常采用的技术。常见的图像半调技术有矩阵错误扩散,弗洛伊德-斯坦德伯格错误扩散,空间填充曲线采样错误扩散等。本文借助半调算法,实现两张图像的融合,将背景纹理融合到目标图像中,创造惊艳的图像处理效果。转载 2017-07-13 10:22:40 · 9027 阅读 · 0 评论 -
图像处理之常见二值化方法汇总
图像处理之常见二值化方法汇总图像二值化是图像分析与处理中最常见最重要的处理手段,二值处理方法也非常多。越精准的方法计算量也越大。本文主要介绍四种常见的二值处理方法,通常情况下可以满足大多数图像处理的需要。主要本文讨论的方法仅针对RGB色彩空间。 方法一:该方法非常简单,对RGB彩色图像灰度化以后,扫描图像的每个像素值,值小于127的将像素值设转载 2017-07-13 10:09:17 · 10885 阅读 · 0 评论 -
图像处理之基于阈值模糊
图像处理之基于阈值模糊算法思想:实现一个高斯卷积模糊但是只运用与周围的像素值与中心像素值差值小于阈值。两个像素值之间的距离计算可以选用向量距离即曼哈顿距离或者欧几里德距离。高斯模糊采用先XY方向一维高斯模糊完成目的是为了减小计算量。程序效果:关键代码解释:分别完成XY方向的一维高斯模糊thresholdBlur( kern转载 2017-07-13 09:50:04 · 1062 阅读 · 0 评论 -
图像处理之调整亮度与饱和度
- created by gloomyfish图像处理之调整亮度与饱和度什么是亮度:简单点说一幅图像的亮度属性是图像的RGB值的大小,RGB各个值越大亮度越高RGB分量取值范围为0~255之间。调整图像亮度。什么是饱和度:饱和度是是指颜色的强度,调整饱和度可以修正过度曝光或者未充分曝光的图片。使图像看上去更加自然。基本思想:转载 2017-07-13 09:38:38 · 2084 阅读 · 0 评论 -
图像处理之相似图片识别(直方图应用篇)
- created by gloomyfish图像处理之相似图片识别(直方图应用篇)算法概述:首先对源图像与要筛选的图像进行直方图数据采集,对采集的各自图像直方图进行归一化再使用巴氏系数算法对直方图数据进行计算,最终得出图像相似度值,其值范围在[0, 1]之间0表示极其不同,1表示极其相似(相同)。 算法步骤详解:大致可以转载 2017-07-13 09:30:21 · 1382 阅读 · 1 评论 -
图像处理之双边滤波效果(Bilateral Filtering for Gray and Color Image)
图像处理之双边滤波效果(Bilateral Filtering for Gray and Color Image)基本介绍:普通的时空域的低通滤波器,在像素空间完成滤波以后,导致图像的边缘部分也变得不那么明显,整张图像都变得同样的模糊,图像边缘细节丢失。双边滤波器(ABilateral Filter)可以很好的保留边缘的同时消除噪声。双边滤波器能做到这些原因在于它不转载 2017-07-12 17:16:39 · 6075 阅读 · 2 评论 -
python opencv 函数库说明
为使得OpenCV的整个库便于管理和扩充,将整个库分成若干子库,CxCore是最重要的一个子库,从“core"名字可以看出,该库提供了所有OpenCV运行时的一些最基本的数据结构,包括矩阵,数组的基本运算,包括出错处理的一些基本函数。具体分为下面若干部分。 基础结构: CvPoint二维坐标系下的点,类型为整型typedef struct CvPoint {转载 2015-08-14 18:51:17 · 10511 阅读 · 1 评论