일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 영상처리
- Windows 10
- 텐서플로우
- 학습
- C언어
- 시스템프로그래밍
- 딥러닝
- TensorFlow
- python
- 공부
- Windows10
- 리눅스
- 운영체제
- c
- 프로그래밍
- 백준
- linux
- OpenCV
- CV
- Computer Vision
- error
- 백준알고리즘
- 턱걸이
- 쉘
- shell
- 알고리즘
- 프로세스
- C++
- 코딩
- 회귀
- Today
- Total
목록CV (11)
줘이리의 인생적기
Hough Transform에 대해 알아보겠습니다. hough transform은 영상에서 직선을 검출하는 방법 중 하나입니다. (설명필요) Hough Transform 코드 원형 설명 def houghLinesP(image, rho=1.0, theta=np.pi/180, threshold=100, minLineLength=10, maxLineGap=100): return cv2.HoughLinesP(image, rho, theta, threshold, minLineLength=minLineLength, maxLineGap=maxLineGap) def drawHoughLinesP(image, lines): result = imageCopy(image) if len(image.shape) == 2: res..
Geometric Transform에 대해 알아보겠습니다. Spatial Transform -Scaling -Rotation -Translation -Skew Affine Transform -Linear tranform -이동, 회전, 스케일 및 이들의 조합에 의한 변환 (설명 필요) Warping -Nonlinear transform (설명 필요) 1번 이미지 잘라서 붙여넣기 2번 이미지 이동 3번 이미지 회전, 확대, 축소 4번 Affine transform 코드 원형 설명 def imageResize(image, dsize=None, fx=0.0, fy=0.0, interpolation=cv2.INTER_LINEAR): if dsize is None and fx == 0.0 and fy == 0.0..
Morphology에 대해 알아보겠습니다. 객체 외곽선을 부드럽게 하거나, 구멍을 메꾸거나, 작은 점을 지우는 기능. 이진 영상, 회색조 영상에도 수행 가능. 기본 Morphology 연산 -Dilation(팽창) : 각 픽셀의 structuring element를 적용하여 or연산 수행, 겹치면 형태 확장 -Erosion(침식) : 각 픽셀의 structuring element를 적용하여 and연산 수행, 겹치지 않으면 형태 축소 활용 Morphology 연산 -Opening : Erosion 후 Dilation 적용 (작은 돌기, 노이즈 제거) -Closing : Dilation 후 Erosion 적용 (전체적인 윤곽 파악) -Gradient : Dilation 이미지에서 Eriosion 이미지 빼는..
Canny Edge에 대해 알아보겠습니다. -1986년 제안된 알고리즘 -모든 경계선 검출 가능 -경계선 위치 정확히 측정 가능 -구현순서 : 가우시안필터로 노이즈 제거 -> sobel mask를 통한 경계선 검출 -> Non maximum suppression -> Double thresholding Canny Edge threshold1은 약한 경계선에 대한 값 threshold2는 강한 경게선에 대한 값 코드 원형 설명 def cannyEdge(image, threshold1=100, threshold2=200): return cv2.Canny(image, threshold1, threshold2) 코드 설명 더보기 from OpenCV_Functions import * def nothing(x):..
경계선 검출은 영상의 밝기가 낮은 값에서 높은 값으로, 또는 반대로 변하는 지점을 검출하는 과정이다. 객체의 경계를 검출함으로써 모양(shape), 방향(direction)을 탐지할 수 있다. 첫 번째로 1차 미분(prewitt, sobel, scharr) 방법을 통해 명암, 밝기 변화율을 검출한 후, 2차 미분(Laplacian) 방법을 이용하여 더욱 민감하게 검출한다. prewitt 연산자 - 수평이나 수직 경계선에 민감 sobel 연산자 - 대각선 경계선에 민감 scharr 연산자 - sobel 보다 민감 Laplacian 연산자 - 모든 방향의 경계선을 강조 참고 사이트 : https://iskim3068.tistory.com/49 윤곽선 검출(Edge Detection) 에지 디텍션 영상에서 윤..
Blur, GaussianBlur, MedianBlur에 대해 알아보겠습니다. 그전에, 영상 평활화(Image Smoothing, Image Blurring)를 알아보겠습니다. 영상 평활화는 영상을 부드럽게 표현하거나 잡음을 제거하기 위해 사용되며, 평균값 필터링(mean filtering) 및 중간값 필터링(median filtering) 연산을 통해 수행되어집니다. 평균값 필터링(mean filtering) -모든 계수가 양수, 전체 합이 1인 마스크 -weight의 형태에 따라 Gaussian filtering이라고도 불림. 중간값 필터링(median filtering) -Nonlinear filtering -중앙의 픽셀 값이 필터 영역 내 모든 픽셀 값의 중앙값으로 대체됨. 1번 imageBlur..
addImage, addWeightedImage, imageThreshold에 대해 알아보도록 하겠습니다. 1번 addImage - 이미지합치기 2번 addWeightedImage - 각 이미지에 가중치 조절하기 3번 imageThreshold -THRESH_BINARY : 픽셀 값이 설정 값보다 크면 설정 값, 작으면 0으로 할당. -THRESH_BINARY_INV : 픽셀 값이 설정 값보다 크면 0, 작으면 설정 값으로 할당. -THRESH_TRUNC : 픽셀 값이 설정 값보다 크면 설정 값, 작으면 픽셀 값으로 할당. -THRESH_TOZERO : 픽셀 값이 설정 값보다 크면 픽셀 값, 작으면 0으로 할당. -THRESH_TOZERO_INV : 픽셀 값이 설정 값보다 크면 0, 작으면 픽셀 값 할당..
영상에 라인을 그려보도록 하겠습니다. 주차 시 후방 카메라에서 많이 보셨을 겁니다. 차선과 평행 방향으로 라인 그리기 라인, 원, 사각형 삽입 코드 원형 설명 #라인 그리기 def drawLine(image, point1, point2, color=(255, 0, 0), thickness=3, lineType=cv2.LINE_AA): result = imageCopy(image) return cv2.line(result, point1, point2, color, thickness, lineType) #원 그리기 def drawCircle(image, center, radius, color=(255, 0, 0), thickness=3, lineType=cv2.LINE_AA): result = imageCo..