YOLO를 이용한 물체 탐지(ptyhon)([고등학교 정보과 정보Ⅱ] 교사 연수용 교재)

5055 단어 YOLOv3교육Python

개시하다


이름처럼 YOLO(You Only Look Once)는 인간처럼 한 번만 봐도 물체를 식별·감지할 수 있는 획기적인 알고리즘이다.
이전의 기법에 비해 처리 속도가 빠르고 물체와 배경에 대한 식별이 강하며 통용되기 쉬운 특징을 가지고 있다.
이번에는 교재 안에서 티니 욜로와 R을 사용해 물체 검측을 하는 곳에서 옐로와 파이썬을 사용해 사진 속 물체 검측을 한다.

교재.


고등학교 정보과 정보Ⅱ 교원 연수용 교재(정편): 문부과학성
제3장 정보 및 데이터 과학 후반부(PDF: 7.6MB)

컨디션

  • ipython
  • Colaboratory - Google Colab
  • 교재에서 언급해야 할 부분


    18 텍스트 발굴과 이미지 식별 학습: "3. TinyYOLO를 이용한 물체 검측"

    python의 설치 예시와 결과


    이번에darknet은github의창고clone(복제),YOLOv3에서중량데이터ylov3를배웠습니다.weights를 사용하여 이미지 식별을 진행하다.
    이번에는pytohon의 실시례가 쓰여있지만darknet에서YOLOv3를 이동하기 위해 지령의 집행을 중심으로 인코딩되지 않은 형태로 물체검측을 진행하도록 하겠습니다.
    !git clone https://github.com/pjreddie/darknet
    
    실행 결과는 다음과 같다.
    Cloning into 'darknet'...
    remote: Enumerating objects: 5913, done.
    remote: Total 5913 (delta 0), reused 0 (delta 0), pack-reused 5913
    Receiving objects: 100% (5913/5913), 6.34 MiB | 9.93 MiB/s, done.
    Resolving deltas: 100% (3918/3918), done.
    
    git clone이기 때문에darknet 디렉터리 아래로 이동해서make를 실행합니다.
    import os
    
    os.chdir('darknet')
    !make
    
    make가 완료되면 YOLOv3의 학습권 중량 데이터 ylov3입니다.weights를 같은 디렉터리에 다운로드합니다.이번에 wget 명령을 사용했습니다.
    !wget https://pjreddie.com/media/files/yolov3.weights
    
    테마의 YOLO에서 물체 검사를 하고 싶습니다. 이번에는 데이터 디렉터리에 있는giraffe입니다.jpg로 물체를 검측하고 싶습니다.
    !./darknet detect cfg/yolov3.cfg yolov3.weights data/giraffe.jpg
    
    layer     filters    size              input                output
        0 conv     32  3 x 3 / 1   608 x 608 x   3   ->   608 x 608 x  32  0.639 BFLOPs
        1 conv     64  3 x 3 / 2   608 x 608 x  32   ->   304 x 304 x  64  3.407 BFLOPs
        2 conv     32  1 x 1 / 1   304 x 304 x  64   ->   304 x 304 x  32  0.379 BFLOPs
        3 conv     64  3 x 3 / 1   304 x 304 x  32   ->   304 x 304 x  64  3.407 BFLOPs
      103 conv    128  1 x 1 / 1    76 x  76 x 256   ->    76 x  76 x 128  0.379 BFLOPs
      104 conv    256  3 x 3 / 1    76 x  76 x 128   ->    76 x  76 x 256  3.407 BFLOPs
      105 conv    255  1 x 1 / 1    76 x  76 x 256   ->    76 x  76 x 255  0.754 BFLOPs
      106 yolo
    Loading weights from yolov3.weights...Done!
    data/giraffe.jpg: Predicted in 19.677707 seconds.
    giraffe: 98%
    zebra: 98%
    
    기린과 얼룩말이 검출되었다.
    실제 검출된 이미지를 보세요.
    from IPython.display import Image
    
    Image("predictions.jpg")
    
    

    테스트에 성공했습니다.

    소스 코드

    좋은 웹페이지 즐겨찾기