인프런 커뮤니티 질문&답변

bgw2001님의 프로필 이미지
bgw2001

작성한 질문수

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

안녕하세요 강의 잘 보고 있습니다 ~!!

작성

·

340

0

keras를 이용해서 pre-trained된 모델을 학습 및 detection을 하다가 

궁금한점이 생겨서 질문을 남깁니다.

이렇게 라쿤을 잘 detection도하고,

score도 출력해주고, bndbox 영역도 잘 나타내주는데.. 전에 배웠던 tensorflow나 opencv로 detection할 때 처럼 score랑 class name, bndbox의 좌표 값을 따로 얻을 순 없는 건가요 .. ? 

답변 3

0

bgw2001님의 프로필 이미지
bgw2001
질문자

아직 못해봤습니다 .. ㅜㅜ 여러 바쁜 일들이 생겨서 .. ㅜ 

저도 저대로 했는데 TypeError: Image data of dtype object cannot be converted to float 에러가 발생하는 이유가 뭔지 알려주실 수 있나요...

0

저도 위와 같은 방법으로 따라서 실행하였는데 에러가 나네요. 

질문하신 분께서는 잘 실행이 되시나요? 

기존에 받아져 있는 yolo.py의 함수를 수정한 이후, __pycache__ 삭제 하였는데, 

다시 패키지 로드 라는 건 어떤 의미 일까요? 

그리고 image, out_boxes, out_scores, out_classes = raccoon_yolo.detect_image(img) 를 inference 코드에서 실행을 하면, 차례대로 image 가 없다, out_boxes가 없다..등등의 에러가 나옵니다. 

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

원하시는 대로 값을 얻으려면 keras-yolo package의 yolo.py 파일을 변경해야 겠군요.

yolo.py 의 def detect_image(self, image) 에서 현재   object detect된  bounding box를 함께 표현한 image 객체만 반환하는데, 이를 수정해서 아래와 같이 변환해야 할것 같습니다. 아래 소스코드에서

https://github.com/qqwweee/keras-yolo3/blob/master/yolo.py

def detect_image(self, image) 의 맨 마지막 return 값을 현재는 return image로만 되어 있는데 이를 return image, out_boxes, out_scores, out_classes 로 변환해야 할것 같습니다. 바뀐 소스 코드로 수정한 뒤에 __pycache__ 삭제한 다음에 다시 패키지 로드한 뒤

image, out_boxes, out_scores, out_classes = raccoon_yolo.detect_image(img) 로 호출하면 원하시는 값을 얻을 수 있을 거 같습니다.

감사합니다.

bgw2001님의 프로필 이미지
bgw2001

작성한 질문수

질문하기