컴퓨터 비전

Image Segmentation 코딩

도그사운드 2023. 10. 18. 22:17

Udemy 강의

https://www.udemy.com/course/yolov8-the-ultimate-course-for-object-detection-tracking/

 

matplotlib으로 이미지를 표시하지 않으려면 Ipython.display를 사용한다.

from IPython.display import Image

Image명령으로 표시 가능

Image('/content/image1.jpg')

 

웹화면에서 비디오를 보여주는 방법

from IPython.display import HTML
from base64 import b64encode
import os

# Input video path
save_path = '/content/runs/segment/predict3/demo.mp4'

# Compressed video path
compressed_path = "/content/result_compressed.mp4"

os.system(f"ffmpeg -i {save_path} -vcodec libx264 {compressed_path}")

# Show video
mp4 = open(compressed_path,'rb').read()
data_url = "data:video/mp4;base64," + b64encode(mp4).decode()
HTML("""
<video width=400 controls>
      <source src="%s" type="video/mp4">
</video>
""" % data_url)

 

파이썬 내에서 처리하는 방법

from ultralytics import YOLO
model = YOLO("yolov8m-seg.pt")
model.predict(source='/content/image1.jpg',  save=True, conf=0.5,save_txt=True)
Image('/content/runs/segment/predict4/image1.jpg')
 
model = YOLO("yolov8m-seg.pt")
model.predict(source='/content/demo.mp4',  save=True, conf=0.5, save_txt = False)
 
from IPython.display import HTML
from base64 import b64encode
import os

# Input video path
save_path = '/content/runs/segment/predict5/demo.mp4'

# Compressed video path
compressed_path = "/content/result_compressed.mp4"

os.system(f"ffmpeg -i {save_path} -vcodec libx264 {compressed_path}")

# Show video
mp4 = open(compressed_path,'rb').read()
data_url = "data:video/mp4;base64," + b64encode(mp4).decode()
HTML("""
<video width=400 controls>
      <source src="%s" type="video/mp4">
</video>
""" % data_url)
 
model = YOLO("yolov8m-seg.pt")
model.export(format="onnx")

torch 모델 파일은 다음에서 모델 구성을 확인할 수 있다.

https://netron.app

 

Netron

 

netron.app

pt파일을 불러들이면...

 

구성을 확인가능하다.

 

 

'컴퓨터 비전' 카테고리의 다른 글

Cuda 가동여부 확인 및 YOLO 실행  (0) 2024.04.30
Python 인코딩 에러 및 기타 에러  (0) 2023.11.03
Vehicle Counting  (0) 2023.10.15
YOLO 트레이닝, roboflow  (0) 2023.10.09
YOLOv8 실행  (1) 2023.10.09