179번째 줄: |
179번째 줄: |
| cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 240) | | cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 240) |
| </syntaxhighlight>[카메라 외의 영상은 이렇게 안줄여진다고 하던데...] | | </syntaxhighlight>[카메라 외의 영상은 이렇게 안줄여진다고 하던데...] |
| + | |
| + | === 처리 효율 === |
| + | {| class="wikitable" |
| + | !의도 |
| + | !설명 |
| + | !방법 |
| + | |- |
| + | |이미지 형태 변환 |
| + | |원본 이미지를 사용하면 처리량이 많아져 계산이 오래걸린다. |
| + | 옵션은 굉장히 다양한데, 자주 쓰이는 것만 모아보았다. |
| + | {| class="wikitable" |
| + | !옵션 |
| + | !설명 |
| + | |- |
| + | |cv2.COLOR_BGR2GRAY |
| + | |BGR 컬러 이미지를 그레이스케일로 |
| + | |- |
| + | |cv2.COLOR_BGR2RGB |
| + | |BGR을 RGB로 변환 |
| + | |- |
| + | | |
| + | | |
| + | |} |
| + | |<syntaxhighlight lang="python"> |
| + | cov_img = cv2.cvtColor(img, cv2.COLOR_옵션) # 원본 img와 옵션을 받아 형태를 변환한다. |
| + | </syntaxhighlight> |
| + | |- |
| + | |바이너리 |
| + | |이미지를 검은색과 흰색만으로 표현한 것. |
| + | 그레이스케일보다 더 빠른 처리를 위해서 + 피사체의 모양을 더 명확하게 파악하기 위해. |
| + | |<syntaxhighlight lang="python"> |
| + | ret, cov_img = cv2.threshold(img, 경계값, 255, cv2.THRESH_BINARY) |
| + | # ret엔 트레시홀딩에 사용한 경계값이 나오니, 버리는 값이다. |
| + | |
| + | ret, cov_img = cv2.threshold(img, 0, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU) # 원본 img와 옵션을 받아 형태를 변환한다. |
| + | # ret에 사용된 경계값이 담기니, 이 ret은 쓸만할지도.. |
| + | </syntaxhighlight>파이프 문자로 연결한 오츠 옵션은 오츠의 알고리즘을 통해 경계값을 자동으로 설정하게 하기 위한 것이다. |
| + | |
| + | 오츠의 알고리즘을 사용하면 모든 경우의 수에 대한 경계값을 조사하기 때문에 느리다. |
| + | |} |
| | | |
| = 꾸미기 = | | = 꾸미기 = |