본문 바로가기

Computer Vision/이미지처리

[OpenCV 입문]차영상 이용한 초보CCTV 코드 OpenCV카페에 본인이 올린 강좌? 라기보다 간단한 소스입니다 ^^ 어느분의 요청으로 주석좀 보충했는데 OpenCV나 영상처리 처음 접하는분들이 약간이나마 도움이 되는 소스입니다. http://cafe.naver.com/opencv/23571 이렇게 반응이 좋을줄은.. 로그인이 싫으신분들은... #include #include #include int sub_image(IplImage*img1, IplImage*img2, IplImage*dst); void main() { IplImage * image; CvCapture* capture; capture = cvCaptureFromCAM(0); image = cvQueryFrame(capture); int cnt=0; char name[10] ; char.. 더보기
핸드폰카메라로 보면 모자이크가 사라진다? 실제로 그럴듯하게 보이긴하지만 이는 말도 안되는 얘기다. 애초에 모자이크의 원리를 살펴보자. 모자이크의 종류도 여러가지지만 모자이크 등의 이미지 처리는 색상의 손실을 유발한다. 쉽게 말하자면 이미지를 크게 확대했을때 점 하나하나가 다 다른색깔이지만 이를 뭉개거나 합쳐서 그룹단위로 색깔을 바꾸게 된다. 개개의 점(pixel)은 자신의 색깔을 잃게 된다. 아래 사진은 예로든 모자이크 사진이다. 이미지의 점은 이웃하는점(바로옆에) 점과 색깔 차이가 거의 없다. 따라서 몇개안되는 점을 그룹화하면 거의 차이가 없기때문에 모자이크 처리가 잘 안되고 거의 원래 이미지와 차이가 없게된다 아래 사진은 그룹화되어 처리된게 보인다. 그룹화된 영역이 꽤 크기 때문에 모자이크가 아주 잘 된 케이스다. 현재 일반적으로 핸드폰 카.. 더보기
포토샵 Blur의 구현(수정) Mophology(Blur) 는 다른알고리즘으로 조금씩다르지만 기본적인 Blur 기능은 간단한 원리이다 픽셀의 그룹의 평균값을 다시 재배정한다. 아례 예는 9 x 9의 사이즈 mask(그룹)으로 알고리즘을 보여준다. /* 9x9 마스크이므로 이미지의 가로와 세로는 9로 나누어 떨어저야한다. */ /* 변수처리해주어 애초에 image->width/40 이런식으로 이미지 크기에따른 동적 마스크도 가능 */ for(i = 0 to image->width; i++) for( j = 0 to image->height; j++) { for(w=0 to 9) { for(h=0 to 9) { sum += pixelData ; //9 x 9 공간의 모든 픽셀값을 더함 } } pixelData = sum/81; //평균값.. 더보기