본문 바로가기

728x90
반응형

AI

(95)
[Computer Vision] Trapped-ball Segmentation 👀 본 예제는 Window10의 VSCode, Python3.11.0로 작성되었습니다. Trapped-ball Segmentation은 주로 만화 프레임과 같은 이미지에서 의미 있는 영역을 추출하는데 효과적인 비지도 이미지 분할 기법이다. 이 방법은 이미지의 경계선에 의해 정의된 닫힌 지역을 식별하고 이를 통해 이미지 내에서 분할을 수행한다. 이 알고리즘은 형태학적 연산을 사용하여 큰 폐쇄된 지역을 식별하고, 각 지역에 대해 고유한 값을 채우는 방식으로 작동한다. 동작 순서흑백 또는 색상이 없는 스케치 이미지를 타깃으로 준비한다.형태학적 연산(Morphological Operations)을 수행(침식(Erosion), 팽창(Dilation)하여 각 영역의 경계를 잘 드러내도록 한다.비교적 넓은 영역을 ..
[Computer Vision] IoU(Intersection over Union) IoU(Intersection over Union)는 주로 객체 탐지 및 세그멘테이션 평가에 사용되는 지표이다. 예측한 영역과 실제 영역 간의 겹치는 부분의 비율을 나타낸다.x : 영역 중심의 x좌표y : 영역 중심의 y좌표w : 영역의 폭h : 영역의 높이 Area of Intersection : 예측된 영역과 실제 영역의 겹치는 부분의 면적이다.Area of Union : 예측된 영역과 실제 영역의 합집합 면적이다. IoU 값은 0 ~ 1 사이의 값을 가지며, 1에 가까울 수록 예측이 정확하다는 것을 의미한다. 일반적으로 IoU가 0.5 이상이면 긍정적인 예측으로 간주 된다.import cv2import numpy as npdef IoU(image:np.ndarray,mask:np.ndarray)->..
[딥러닝/DL] Loss Function 일반적으로 손실함수(Loss Function)은 딥러닝에서 모델의 출력값과 사용자가 원하는 출력값의 오차를 의미한다. 이 Loss Function을 통해 모델을 원하는 방향으로 학습할 수 있다. Loss Function은 많이 사용되는 MSE, MAE, R2, Cross Entropy 같은 것들도 있고 사용자가 정의하여 커스텀 Loss Function을 만들어 사용할 수도 있다. 이 방법은 특정 모델을 학습하는 방법론에서 적용할 수 있다.  MSE(Mean Squared Error)예측한 값과 실제값 사이의 평균 제곱 오차를 정의한다. 공식이 매우 간단하고, 주로 회귀 문제에 사용된다.오차의 제곱을 평균 낸것이기 때문에 큰 오차에 대해 더 많은 패널티를 부여한다.  MAE(Mean Absolute Err..
[Computer Vision] PIL(Python Image Library) 👀 본 예제는 Window10의 VSCode, Python3.11.0로 작성되었습니다.  Python Image Library, 줄여서 PIL은 파이썬에서 이미지를 처리하기 위해 사용되는 강력한 라이브러리이다.이미지 파일을 열고, 수정하고, 저장하는 기능을 제공하여 다양한 이미지 작업을 쉽게 수행할 수 있게 해준다.PIL은 이미지 필터링, 변환, 색상 조정, 이미지 포맷 변환 등 여러 가지 기능을 지원한다.pip install pillow 기본적인 이미지를 열고 보고 저장하는 법from PIL import Imageimage = Image.open("test.jpg")image.show()image.save("save_test.jpg")  이미지 조절하기from PIL import Imageimage ..
[Computer Vision] 지역 특징점 검출과 매칭 👀 본 예제는 Window10의 VSCode, Python3.11.0로 작성되었습니다. 해리스 코너 검출(Harris Corner Detection)해리스 코너 검출은 이미지에서 코너를 검출하는 기법으로, 주로 특징점 검출에 사용된다.import cv2import numpy as npimage = cv2.imread("window.jpg")gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)gray = np.float32(gray)# 해리스 코너 검출dst = cv2.cornerHarris(gray, blockSize=2, ksize=3, k=0.04)# 결과 이미지를 복사하여 코너 표시image[dst > 0.01 * dst.max()] = [0, 0, 255] # 코..

728x90
반응형