
OpenCV
sundy_2004
这个作者很懒,什么都没留下…
展开
-
OpenCV合并图像
如果要合并两张或者多张图片,我们可以采用这样的思路,设置ROI。以合并两张大小320x240的图像为例:A 需要创建一张640x240的图像dstImage。B 把dstImage的ROI设置为Rect(0,0,320,240),刚好可以放一张小图像。C 然后把小图像image1 COPY到dstImage中。D 重新设置ROI,针对第二张小图像image2重复B和C的操作。I原创 2012-02-01 20:05:37 · 5351 阅读 · 0 评论 -
利用OpenCV计算图像的垂直和水平积分投影
#include #include #pragma comment( lib, "cv.lib" )#pragma comment( lib, "cxcore.lib" )#pragma comment( lib, "highgui.lib" )int main(){ IplImage * src=cvLoadImage("lena.jpg",0);// cvSmooth(src转载 2012-02-18 22:35:43 · 6811 阅读 · 7 评论 -
OpenCv矩阵操作
有很多函数有mask,代表掩码,如果某位mask是0,那么对应的src的那一位就不计算,mask要和矩阵/ROI/的大小相等大多数函数支持ROI,如果图像ROI被设置,那么只处理ROI部分少部分函数支持COI,如果COI设置,只处理感兴趣的通道矩阵逻辑运算void cvAnd(const CvArr* src1,const CvArr* src2, CvArr* d原创 2012-02-15 22:31:36 · 1512 阅读 · 0 评论 -
OpenCV直方图均衡化(cvEqualizeHist)
我们可以对图像做点事情尝试扩大其动态范围,对这个操作最常用的技术是直方图均衡化,可以将比较淡的图像变换为比较深的图像(即增强图像的亮度及对比度)。直方图均衡化后面潜在的数学原理是一个分布(输入的亮度直方图)被映射到另一个分布(一个更宽,理想统一的亮度值分布),映射函数是一个累积分布函数。对于连续分布,结果将是准确的均衡化。在cvEqualizeHist中,原始图像及目标图像必须是单通道,大小相同的转载 2012-02-14 22:51:46 · 27424 阅读 · 4 评论 -
OpenCV_轮廓的查找、表达、绘制、特性及匹配
虽然Canny之类的边缘检测算法可以根据像素间的差异检测出轮廓边界的像素,但是它并没有将轮廓作为一个整体。下一步是要将这些边缘像素组装成轮廓。轮廓是构成任何一个形状的边界或外形线。直方图对比和模板匹配根据色彩及色彩的分布来进行匹配,以下包括:轮廓的查找、表达方式、组织方式、绘制、特性、匹配。首先回忆下几个结构体:首先是图像本身的结构体:typedef struct转载 2012-02-05 15:39:05 · 4256 阅读 · 0 评论 -
opencv使用cvFindContours提取联通域
// m_imgFeature为黑白目标图像,白色为前景,黑色为背景// 注意此函数会修改m_imgFeature内容。若其不可更改,应另建立副本// 1. count contourCvMemStorage* storage = 0;storage = cvCreateMemStorage(0); //开辟默认大小的空间CvSeq* contour = 0;转载 2012-02-03 23:11:58 · 1306 阅读 · 0 评论 -
MFC使用Opencv常用函数
================================1 显示IplImage到指定窗口==================================public:BITMAPINFO *m_pBITMAPINFO_24;// 24位真彩图BITMAPINFO格式固定,提前创建1次并保存指针BITMAPINFO *m_pBITMAPINFO_08;// 8位灰度图BIT转载 2012-02-03 21:53:00 · 808 阅读 · 0 评论 -
图像连通域的标定
[图片] 图像连通域的标定(OpenCv版)[图片] 图像连通域的标定(OpenCv版)[代码] [C/C++]代码view sourceprint?01#include "cv.h"02#include "cxcore.h原创 2012-02-02 23:07:13 · 1360 阅读 · 0 评论 -
OpenCV像素点处理
获得像素点的值便可以更加灵活的进行图像处理,在OpenCV里可以通过cvGet2D()和cvSet2D()两个函数加上一个CvScalar结构体做到。OpenCV中,CvScalar结构为:typedef struct CvScalar{ double val[4];}CvScalar; 4个double型变量,算法处理时不至于被强制类型转换而降低精度了。转载 2012-02-01 22:02:52 · 1065 阅读 · 0 评论 -
OpenCV的cvMatchTemplate用法
首先,参看上图。假设褐色的大图为待测图片,红色小图为模板图片。 1.result中数据的含义。 模板匹配函数cvMatchTemplate依次计算模板与待测图片的重叠区域的相似度,并将结果存入映射图像result当中,也就是说result图像中的每一个点的值代表了一次相似度比较结果。 2.result的尺寸大小。 如图可转载 2012-07-15 18:06:16 · 25886 阅读 · 6 评论