

CNN(특징강조)
pooling(불필요한 내용 삭제)

욜로
친칠라

중심좌표에서 x,y 저장하는 방법

YOLO는 2번방법 중심좌표에서 시작
을 맞추는 영역분할기법
세그먼테이션 어디서 쓰일까? 자율주행
ex) 차량파손 어디서 어디까지 파손되었나


기존 classification의 문제점 : CNN(특징강조)와 Pooling(불필요한정보삭제)을 거치면서 이미지 정보가 압축이 됩니다. 추상화되면서 압축된 정보가 도출
각 개별 픽셀들의 정보(색상, 위치)는 소실 또는 추상화되고 전체 이미지에 대한 압축된 정보만 남게 된다.

묶어서 압축
위치정보는 없어지고 색상정보는 추상화
문제를 해소하기 위해서 새로운 모델이 있습니다.
Fully Convolutional Network(FCN)의 등장

마지막 21때는
확률을 알기위해서 MLP에 붙여줍니다. (Flatten 해서 위치정보소실 이미 됨 + MLP 넣기위해선 1차원이어야함)
하지만

자연어에서 비슷하게 채용해서 씁니다.


mAP 평가지표가 큰거가 성능이 더 좋지만 속도는 떨어집니다.
640x640

한줄에 하나의 객체
나열
숫자는 클래스 정보
해당영역 좌표정보
0번 클래스 3개점
1번 클래스 5개 점으로 영역을 표시하는 라벨 데이터
누끼를 따듯이 포인트정보가 데이터로 들어와있습니다.

conf =0.15

conf = 0.4
우산,스케이트보드 잘못선택한거 사라짐
쏘카 기술블로그 딥러닝 모델 내용 중

1번 정상 차 / 불량 차
먼저 판별 후 아마 임계치를 높여서 합 / 불 판별을 해서 사진 파악 속도를 높였을 겁니다.
2번
세그먼테이션
일부러 빗겨난 사진 넣어서 강건하게 만듦 + 사진 가이드라인 추가
보완방법
모델 결합 (위치결합, 색상)
성능평가

겹치는 정도가 얼마인가

바꿔가면서 평균적으로 몇개 맞추는지 점수
Ap 라고 부릅니다.

0.5-0.95 겹친거까지 정밀도 내서 평균값
차 Ap
사람 Ap
전체 다 더하고 평균이 = mAp 입니다.
box, mask
box 겹쳐진거끼리
mask 누끼 실제영역
box는 추정값으로 해서 조금 더 점수가 높게 나왔습니다.




라벨 - 정답
2개 인스턴스가 있습니다. 좌표값이 나열되어 있습니다.
학습된 best.pt는 runs > train > weights 폴더 안에 있는데 구체적으로 어디였는지
클래스는 14개로 되어있습니다.

√ 학습된 모델로 로컬에서 예측 수행하기
• 영상을 활용해 차량파손범위 예측
• 참고 : https://docs.ultralytics.com/modes/predict/#streaming-source-for-loop
↑ √

#라이브러리 설치
!pip install opencv-python ultralytics
import cv2
from ultralytics import YOLO
model = YOLO("./best.pt")
video_path = "./car.mp4"
cap = cv2.VideoCapture(video_path)
while cap.isOpened():
# Read a frame from the video
success, frame = cap.read()
if success:
# Run YOLOv8 inference on the frame
results = model(frame)
# Visualize the results on the frame
annotated_frame = results[0].plot()
# Display the annotated frame
cv2.imshow("YOLOv8 Inference", annotated_frame)
# Break the loop if 'q' is pressed
if cv2.waitKey(1) & 0xFF == ord("q"):
break
else:
# Break the loop if the end of the video is reached
break
cap.release()
cv2.destroyAllWindows()