鄙人初学opencv,在论坛上有人在做PCB板圆形焊盘检测,自己尝试用三种方法来检测圆形焊盘,下面为检测图像:1、轮廓和霍夫圆变换 1 void main() 2 { 3 IplImage* src=cvLoadImage("1.jpg",CV_LOAD_IMAGE_UNCHANGED);/...
分类:
其他好文 时间:
2014-12-16 16:32:47
阅读次数:
414
#include #include #include #define MAX_CLUSTERS (8)using namespace std;int main( int argc, char **argv){IplImage *imgA = cvLoadImage( "1.jpg", CV_LOAD...
分类:
其他好文 时间:
2014-12-15 16:47:47
阅读次数:
379
#include
#include
int main()
{
IplImage *Image1;
IplROI ROI;
CvRect Rect1,Rect2;
Image1=cvLoadImage("黑子.jpg",1);
Rect1=cvRect(50,50,14,22);//坐标值根据手动标定来确定...
分类:
其他好文 时间:
2014-12-09 17:47:46
阅读次数:
368
1、CvMat之间的复制//注意:深拷贝 - 单独分配空间,两者相互独立 CvMat* a; CvMat* b = cvCloneMat(a); //copy a to b 2、Mat之间的复制//注意:浅拷贝 - 不复制数据只创建矩阵头,数据共享(更改a,b,c的任意一个都会对另外2个...
分类:
其他好文 时间:
2014-12-08 11:57:48
阅读次数:
254
核心函数:(后面标明号的,下面有解析) int cvFindContours(Iplimage* img,//这是输入函数,必须是8bit,单通道的图像---1 CvMemStorage* storage,// 已分配的内存,用来存这个函数所搜索到的轮廓 ---2 CvSeq** firstCont...
分类:
其他好文 时间:
2014-11-29 20:11:00
阅读次数:
290
一、(1) 浅拷贝: Mat B; B = image // 第一种方式 Mat C(image); // 第二种方式这两种方式称为浅copy,是由于它们有不同的矩阵头,但是它们共享内存空间,即指向一个矩阵。当图像矩阵发生变化时,两者相关联,都会变化。(2)深拷贝Mat B,C; B = image...
分类:
其他好文 时间:
2014-11-27 22:01:20
阅读次数:
544
#include "highgui.h"
int main(int argc,char** argv)
{
IplImage* img=cvLoadImage(argv[1]);
cvNamedWindow("Test1",CV_WINDOW_AUTOSIZE);
cvShowImage("Test1",img);
cvWaitKey(0);
c...
分类:
其他好文 时间:
2014-11-26 11:36:17
阅读次数:
190
一、Mat类型:矩阵类型,Matrix。在openCV中,Mat是一个多维的密集数据数组。可以用来处理向量和矩阵、图像、直方图等等常见的多维数据。Mat有3个重要的方法:1、Mat mat = imread(const String* filename); 读取图像2、imshow(const st...
分类:
其他好文 时间:
2014-11-21 21:51:26
阅读次数:
269
调试opencv程序时,发现使用cvShowImage函数无法显示图片,显示窗口完全灰化。解决办法就是在后面加上waitkey函数。1 IplImage *gray = cvLoadImage(imgFile.c_str(), CV_LOAD_IMAGE_GRAYSCALE);2 cvSho...
分类:
其他好文 时间:
2014-11-19 18:02:58
阅读次数:
373
新版本的OpenCV 使用Mat作为基本的图像容器,而代替旧版本的 CvMat 和 IplImage All the OpenCV related stuff is put into the cv namespace to avoid name conflicts with other librar...
分类:
其他好文 时间:
2014-11-18 10:18:21
阅读次数:
233