반응형
허프변환에 대해 좀더 알고 싶으시면 아래 글을 참고하세요...
[그래픽스&컴퓨터비전/구현한 것들] - Hough Line Transform 구현
- #include <opencv2/core/mat.hpp>
- #include <opencv2/imgcodecs.hpp>
- #include <opencv2/imgproc.hpp>
- #include <opencv2/highgui.hpp>
- using namespace cv;
- using namespace std;
- int main(int argc, char**argv )
- {
- Mat img_original = imread("indoor1.jpg", IMREAD_COLOR );
- Mat img_edge, img_gray;
- //그레이 스케일 영상으로 변환 한후.
- cvtColor( img_original, img_gray, COLOR_BGR2GRAY);
- //캐니에지를 이용하여 에지 성분을 검출합니다.
- Canny( img_gray, img_edge, 30, 90, 3);
- //직선 성분을 검출합니다.
- vector<Vec4i> lines;
- HoughLinesP( img_edge, lines, 1, CV_PI/180, 30, 30, 3);
- //검출한 직선을 영상에 그려줍니다.
- for( int i=0; i<lines.size(); i++ )
- {
- Vec4i L = lines[i];
- line(img_original, Point(L[0],L[1]), Point(L[2],L[3]),
- Scalar(0,0,255), 1, LINE_AA );
- }
- cvNamedWindow("edge", WINDOW_AUTOSIZE );
- imshow( "edge", img_edge );
- cvNamedWindow("result", WINDOW_AUTOSIZE );
- imshow( "result", img_original );
- waitKey(0);
- }
Canny함수와 HoughLinesP 함수의 파라메타를 조정하여 복도 사진에서 직선 성분을 뽑아봤습니다. 수작업으로 제대로 나온 상태를 찾은 거라.. 실제로는 이런 결과가 안나올 수 있습니다. 똑같은 장소에서 촬영한 이미지라도 조명 상황에 따라 에지가 다르게 뽑힐 수 있어서요..
반응형
'OpenCV > OpenCV 강좌' 카테고리의 다른 글
RANSAC을 이용한 Line fitting (0) | 2016.05.27 |
---|---|
opencv를 이용하여 wxPython에서 웹캠 영상 띄우기 (0) | 2016.05.23 |
openCV 라벨링 예제 ( connectedComponentsWithStats ) (65) | 2015.11.19 |
opencv 튜토리얼 - hough line transform (3) | 2015.11.16 |
opencv python - Harris Corner Detection (2) | 2015.11.13 |
opencv python - K-Means Clustering (3) | 2015.11.10 |
opencv python - 극좌표를 이용하여 방사형으로 라인 그리기 (0) | 2015.11.07 |
허프라인(HoughLine) 태스트 (9) | 2015.10.23 |
포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
개선 사항을 댓글로 남겨주면 가능한 빨리 반영하도록 하겠습니다.
여러분의 응원으로 좋은 컨텐츠가 만들어집니다.
지금 본 내용이 도움이 되었다면 유튜브 구독 부탁드립니다.
감사합니다 ~~
유튜브 구독하기
제가 쓴 책도 한번 검토해보세요 ^^
-
template<typename _Tp, int m, int n> inline
Matx<_Tp, m, n>::Matx(const _Tp* values)
{
for( int i = 0; i < channels; i++ ) val[i] = values[i];
}
000000013F14243A mov eax,dword ptr [r8+rax*4]
0x000000013F91243A에(Opencv 3.exe의) 처리되지 않은 예외가 있습니다. 0xC0000005: 0x00000000041E3000 위치를 읽는 동안 액세스 위반이 발생했습니다..
그대로 붙여 넣고 파일이름만 바꾸었는데 이런 에러가 나네요.뭐가 잘못됀건지 도와주세요