inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

Pascal VOC 데이터 세트 탐색하기

영상에서 설명하는 코드가 왜 jupyter notebook에 없나요??

253

2 hyun

작성한 질문수 9

0

sample_xml 관련 코드라든지 몇개의 영상속 코드가 실제 jupyter notebook에 없고 장문의 코드 2개가 있는데요.. 이게 혹시 어떻게 된건지 궁금합니다..

머신러닝 배워볼래요? 컴퓨터-비전 keras python tensorflow 딥러닝

답변 5

1

권 철민

아, 이게 실습예제 코드와 동영상이 불일치하는 군요.

제가 다시 수정작업하겠습니다. 알려주셔서 감사합니다.

0

권 철민

이번주까지 수정하도록 하겠습니다.

0

지호손

그렇네요 xmltodict 를 사용하지않고 xml.etree.ElementTree를 사용해서 파싱해서 처리하는 코드가 있네요. 저는 개인적으로 xml.etree.ElementTree를 이용한 코드가 읽기가ㅎ더 편하네요. 코드 지향적이라

0

이문규

# ! conda install -c conda-forge xmltodict

# # xmltodict는 XML 파일을 parsing하여 Dictionary와 list 형태로 반환해줌.

import xmltodict

import os

import random

VOC_ROOT_DIR = "../../data/voc/VOCdevkit/VOC2012"

ANNO_DIR = os.path.join(VOC_ROOT_DIR, "Annotations")

JPEG_DIR = os.path.join(VOC_ROOT_DIR, "JPEGImages")

xml_files = os.listdir(ANNO_DIR)

print(xml_files[:5]); print(len(xml_files))

## xmltodict.parse()를 이용하여  xml 파일을 Dictionary와 list형태로 변환

sample_xml = os.path.join(ANNO_DIR, '2007_000032.xml')

print('sample xml file : ', sample_xml)

with open(sample_xml, 'rb') as f: # notice the "rb" mode

    parsed_dict = xmltodict.parse(f, xml_attribs = True)

    

parsed_dict

#### Annotation 내의 Object들의 bounding box 정보를 이용하여 Bounding box 시각화

lmg_filename = parsed_dict['annotation']['filename']

lmg_filename = os.path.join(JPEG_DIR, lmg_filename)

print(lmg_filename)

lmg = cv2.imread(lmg_filename)

lmg_rgb = cv2.cvtColor(lmg, cv2.COLOR_BGR2RGB)

lmg_rgb_copy = img_rgb.copy()

green_rgb = (125,255,51)

for obj in parsed_dict['annotation']['object']:

    class_name = obj['name']

    bndbox = obj['bndbox']

    

    left = int(bndbox['xmin'])

    top = int(bndbox['ymin'])

    right = int(bndbox['xmax'])

    bottom = int(bndbox['ymax'])

    

    cv2.rectangle(lmg_rgb_copy, (left, top), (right, bottom), color=green_rgb, thickness=2)

    

plt.figure(figsize=(8,8))

plt.imshow(lmg_rgb_copy)

plt.show()

-------------

이 부분을 말씀하시는 것 같습니다.

7:00 ~

0

권 철민

안녕하십니까,

jupyter notebook에는 python 코드만 있습니다.

sample_xml 관련 코드가 어떤건지 모르지만 모든 xml 파일은 영상에서 설명된 대로 ~/DLCV/data 밑에 os 파일로 존재하고 있습니다. 그리고 sample_xml 이 어떤 파일인지 제가 잘 모르겠습니다.

질문하신게 제가 답변한 바가 아니라면 sample_xml 관련 코드가 영상의 몇분몇초에 해당 하는 건지 기재해 주시면 제가 다시 찾아보겠습니다.

감사합니다.

강의 환경설정 질문

0

38

2

Custom Dataset에서의 polygon 정보 관련

0

83

3

cvat.ai 보안 수준이 궁금합니다

0

78

2

캐클 nucleus 챌린지 runpod 실습 코드 에러 질문드립니다.

0

94

3

추론 결과의 Precision(또는 mAP) 평가 방법

0

83

2

mmdetection mask rcnn inferenct 실습 시 runpod 템플릿 관해서 질문드립니다.

0

58

2

runpod에서 google drive 연결 시 오류 발생

0

106

2

로드맵 선택

0

65

1

mmcv

0

56

2

Anchor box의 Positive 처리 위치

0

60

2

해당 강의 runpod 적용 후 에러 제보드립니다

0

84

2

run pod credit 관련 제보

0

95

2

mmdetection 2.x과 3.x 호환 관련 표기

0

76

2

mm_faster_rcnn_train_kitti.ipynb 실행 오류

0

94

3

질문 드립니다.

0

75

3

mm_faster_rcnn_train_coco_bccd 실행 오류 질문드립니다.

0

77

1

강사님께 수정을 제안드리고 싶은 것이 있습니다.

0

92

1

google automl efficientdet 다운로드 및 설치 오류

0

72

1

이상 탐지에 사용할 비전 기술 조언 부탁드립니다.

0

101

2

OpenCV 관련 질문드립니다.

0

70

2

mmcv 설치관련해서 문의드려요

0

329

3

강의 구성 관련해서 질문이 있습니다

1

135

2

모델 변환 성능 질문드립니다.

0

122

1

NMS 로직 문의 드려요

0

112

2