반응형
처음에 링크 에서 제공해준 코드를 사용하여 findcours를 할려고하니, 계속해서 에러가 발생하였다. 도대체 무슨 문제인지를 몰랐는데, 단순히 Debug 모드에서 Release 모드로 변경하니 실행이 되었다 ㅡㅡ...
가끔 느끼지만, OpenCV를 활용한 코드를 실행할때 debug 모드로 했을때 뭔지 알수없는 에러가 가끔 발생하는거 같으니, 앞으로는 Release 모드로만 코드 실행을 하자!
#include "opencv2\opencv.hpp"
#include <iostream>
#include <cstdlib>
using namespace cv;
using namespace std;
RNG rng(12345);
int main(int argc, char ** argv)
{
Mat srcimage = imread("lena.tif",IMREAD_GRAYSCALE);
if (srcimage.empty())
{
cout << "[INFO] No image!!" << endl;
return -1;
}
Mat dstimage = Mat::zeros(srcimage.rows, srcimage.cols, CV_8UC3);
//srcimage = srcimage > 1;
namedWindow("Source", 1);
imshow("Source", srcimage);
Mat cannyimage;
Canny(srcimage, cannyimage, 10, 100);
imshow("Canny", cannyimage);
waitKey();
vector<vector<Point>> contours;
vector<Vec4i> hierarchy;
findContours(cannyimage, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE,Point(0,0));
for (int i = 0; i< contours.size(); i++)
{
Scalar color = Scalar(rng.uniform(0, 255), rng.uniform(0, 255), rng.uniform(0, 255));
drawContours(dstimage, contours, i, color, 2, 8, hierarchy, 0, Point());
}
imshow("dstimage", dstimage);
waitKey();
return 0;
}
코드에 대한 해석은 다음 기회에~
반응형
'영상처리' 카테고리의 다른 글
[OpenCV 3.2] 비디오 영상으로부터 findcontours 적용 (0) | 2019.03.28 |
---|---|
[공부] SGM(Semi Global Matching)을 이용한 UV-disparity 구현 (0) | 2019.03.12 |
OpenCV 3.2를 이용한 웸캡 입출력 코드 (0) | 2019.02.11 |
다양한 색공간에 대한 이해 (0) | 2019.01.22 |