참고 자료
실습 데이터 파일
실습에 쓰는 파일은 교안과 함께 받은 data 폴더에 있습니다. 모두 tools/make_data.py 가 OpenCV 로 도형을 그려 만든 연습용 가상 그림이고, 실제 사진이나 상점, 제품과 관계없습니다. 파일을 작게 만들어 두어서 그림 한 장이 30KB 를 넘지 않습니다. 동영상은 하나에 20~80KB 이고, 20장까지의 원본을 모두 합쳐도 2.5MB 쯤입니다. 이와 따로 18장부터 쓰는 YOLO 가중치 yolo11n.pt(5.4MB)가 들어 있습니다. 장이 추가되면 이 목록도 함께 늘어납니다.
파일 목록
| 파일 | 내용 | 크기 | 쓰는 곳 |
|---|---|---|---|
fruit_stand.png | 과일 가게 진열대. 사과(빨강), 귤(주황), 라임(초록) | 320×240, 컬러, 9.7KB | 1장 본문, 실습 3, 4, 5 |
ch01_samples/parcel_box.png | 택배 상자 | 200×160, 컬러, 2.8KB | 1장 프로젝트 |
ch01_samples/road_sign.jpg | 둥근 교통 표지 | 180×180, 컬러(jpg), 5.2KB | 1장 프로젝트 |
ch01_samples/gear_gray.png | 공장 부품(톱니바퀴) | 160×160, 흑백(채널 1), 2.4KB | 1장 프로젝트 |
ch01_samples/broken.png | 이름만 png 이고 속은 글자인 깨진 파일 | 60바이트 | 1장 프로젝트 |
ch02_sticker.png | 투명 바탕의 웃는 별 스티커(BGRA, 가장자리 반투명) | 160×160, 채널 4, 6.4KB | 2장 본문, 실습 1 |
ch02_market.png | 동네 장터 진열대. 위 칸 우유·식빵·통조림, 아래 칸 수박·달걀·당근 | 320×240, 컬러, 17.2KB | 2장 본문, 실습 3 |
ch02_product.png | 가상 쇼핑몰의 머그컵 상품 그림(MORNING 글자, SALE 30% 가격표) | 240×180, 컬러, 10.5KB | 2장 본문, 실습 2, 5 |
ch02_shop/ 의 3장(tshirt, sneaker, bag) | 가상 쇼핑몰 상품 그림(상품 번호 T-01, S-07, B-12) | 200×150, 컬러, 4.0~18.6KB | 2장 프로젝트 |
ch02_gallery/ 의 6장(bus, house, tree, cup, umbrella, bicycle) | 도형으로 그린 작은 그림 | 120×90, 컬러, 1.8~5.0KB | 2장 실습 4 |
fruit_basket.png | 과일 바구니. 사과 셋, 바나나 둘, 라임 둘, 포도 한 송이, 갈색 바구니 | 320×240, 컬러, 22.8KB | 3장 본문, 실습 1~5, 프로젝트 |
color_chips.png | 색 견본 12칸과 영문 이름 | 300×200, 컬러, 14.5KB | 3장 본문, 실습 3 |
ch04_scenes/ 의 3장(sunset, lake, forest) | 색 경향이 다른 풍경: 노을(빨강이 많음), 호수(파랑이 많음), 숲(초록이 많음) | 320×240, 컬러, 3.4~11.9KB | 4장 본문, 실습 1, 2, 3, 5 |
ch04_exposure/ 의 4장(normal, dark, bright, low_contrast) | 같은 거리 장면을 노출 알맞음·어둡게·밝게·대비 낮게 만든 그림 | 320×240, 컬러, 9.8~10.2KB | 4장 본문, 실습 4, 프로젝트, 5장 실습 1~3 |
ch05_backlit.png | 밝은 창을 등진 역광 실내. 책장, 시계, 화분, 컵이 어둠 속에 있다 | 320×240, 컬러, 20.3KB | 5장 본문, 실습 4 |
ch05_fruit_dim.png | 노란 불빛 아래 어둑하고 누런 과일 상자 | 320×240, 컬러, 7.9KB | 5장 본문, 실습 5 |
ch05_train/ 의 6장(part_01~06) | 컨베이어 위 톱니바퀴·볼트를 노출만 달리 그린 학습 사진: 정상, 어둡게, 밝게, 대비 낮게, 어둡고 대비 낮게, 왼쪽 그림자 | 240×180, 컬러, 13.1~17.6KB | 5장 본문, 프로젝트 |
ch06_board.png | 지하 주차장 안내판. 고른 벽, "B2 EXIT" 와 화살표, 굵기 2·4·8칸 줄무늬, 아래쪽 밝기 경계(왼쪽 60, 오른쪽 200) | 320×240, 흑백, 6.1KB | 6장 본문, 실습 1~5 |
ch06_parking.png | 밤의 야외 주차장. P 표지판, 불 켜진 건물, 주차선, 도형 자동차 두 대 | 320×240, 컬러, 16.2KB | 6장 프로젝트 |
ch07_sign.png | 건물 안내 표지판. 초록 판에 흰 글자 "GATE B", 화살표, 노란 네모, 주의 줄무늬 | 320×240, 컬러, 11.1KB | 7장 본문, 실습 1~5 |
ch07_parts.png | 컨베이어 위 부품: 와셔, 육각 너트, 구멍 뚫린 판, 판 위 굵기 1칸의 얇은 금, 글자 "A-07" | 320×240, 흑백, 4.3KB | 7장 실습 3, 프로젝트 |
ch08_parts.png | 밝은 작업대 위의 동전·와셔·볼트. 히스토그램 봉우리가 둘 | 320×240, 흑백, 9.3KB | 8장 본문, 실습 1, 2, 5 |
ch08_shadow_doc.png | 오른쪽으로 갈수록 그늘이 진 실습 안내문(영문) | 320×240, 흑백, 23.9KB | 8장 본문, 실습 3, 4 |
ch08_clean_doc.png | 같은 안내문의 그늘 없는 판(정답 비교용) | 320×240, 흑백, 11.4KB | 8장 본문, 실습 3, 4 |
ch08_receipts/ 의 6장(receipt_1~3, receipt_1~3_mask) | 그늘·그림자·얼룩이 있는 영수증 세 장과 글자 자리의 정답 마스크(글자 255, 바탕 0) | 180×240, 흑백, 2~10KB | 8장 프로젝트 |
ch09_shapes.png | 검은 바탕의 흰 도형 판: 네모, 원, 굵기 2 선, 작은 점 둘, 4칸 떨어진 두 원, 고리 | 320×200, 이진, 1.9KB | 9장 본문, 실습 2 |
ch09_letters_clean.png | 흰 글자 MORPH 의 깨끗한 판 | 320×120, 이진, 1.6KB | 9장 본문, 실습 3, 4, 5 |
ch09_letters_broken.png | 같은 글자에 굵기 2 틈 5줄과 반지름 2 구멍 14개를 낸 판 | 320×120, 이진, 1.8KB | 9장 본문, 실습 4, 5 |
ch09_inspect/ 의 4장(tray_1, tray_2, tray_1_mask, tray_2_mask) | 먼지·반사광·금이 있는 부품 검사 사진 두 장(부품 6개, 7개)과 정답 마스크(부품 255) | 240×180, 흑백, 1.4~6.5KB | 9장 프로젝트 |
ch10_shapes.png | 도형 판: 바탕 50, 네모 200, 원 140, 세모 230, 계단 띠 80·110·140·170·200 | 320×240, 흑백, 2.3KB | 10장 본문, 실습 1~5 |
ch10_road.png | 위에서 내려다본 도로: 세로 차선, 노란 두 줄, 정지선, 횡단보도 띠, 자동차 한 대 | 320×240, 컬러, 11KB | 10장 프로젝트 |
ch11_set/ 의 8장(shapes, parts, letters, fade 와 각각의 _edge 정답 경계) | 도형, 부품, 영문 글자 "EDGE"·"Canny 11", 옅어지는 띠 그림과 두께 1 정답 경계(경계 255) | 320×240, 흑백, 1.1~4.0KB | 11장 본문, 실습 1~5, 프로젝트 |
ch12_shapes.png | 흰 도형 판: 곧은 네모 80×50, 원 r35, 30도 기운 네모, 세모, 도넛(구멍 r20), 타원, 작은 점 2개 | 320×240, 이진, 2.0KB | 12장 본문, 실습 1, 3, 4 |
ch12_nested.png | 도넛, 구멍 속에 점이 든 액자, 꽉 찬 원 | 320×160, 이진, 1.7KB | 12장 본문, 실습 2 |
ch12_tray.png | 부품 12개와 먼지 40개, 반사점이 있는 작업대 | 320×240, 흑백, 10.2KB | 12장 본문, 실습 5 |
ch12_conveyor/ 의 3개(belt_1.png, belt_2.png, answer.csv) | 크기 세 종류(작음·보통·큼)의 원·네모 부품 9개·12개와 먼지, 정답표(사진, 모양, 크기, x, y) | 흑백, 9.5~9.9KB | 12장 프로젝트 |
ch13_shapes.png | 어두운 바탕에 원·세모·네모·긴 막대·별·초승달·팔각형·20도 기운 네모 | 320×240, 컬러, 4.2KB | 13장 본문, 실습 1~3 |
ch13_parcel.png | 책상 위 택배 상자. 흰 송장(가로 60~204, 세로 40~152), 바코드, 주황 스티커. 이름·주소는 지어낸 것, 번호는 010-0000-0000 | 320×240, 컬러, 17.5KB | 13장 본문, 실습 4, 5 |
ch13_signs.png, ch13_signs_answer.csv | 단순 도형으로 그린 가상 표지판 8개(실제 표지 도안이 아님)와 정답 표(sign_id, cx, cy, shape) | 320×240, 컬러, 10.2KB | 13장 프로젝트 |
ch14_grid.png | 모눈, 네 구석 색 점(빨강 (40,40), 초록 (280,40), 파랑 (280,200), 주황 (40,200)), 글자 F·AB12, 화살표 | 320×240, 컬러, 14KB | 14장 본문, 실습 1, 3, 4 |
ch14_icon.png, ch14_rings.png | 32×24 아주 작은 아이콘, 굵기 2칸 동심원 무늬(흑백) | 0.5KB, 15KB | 14장 본문, 실습 1 |
ch14_photos/ 의 3장(wide, tall, square) | 가로로 긴 시계, 세로로 긴 귤, 거의 정사각형인 접시 | 320×180·160×240·220×200, 4~6KB | 14장 본문, 실습 2 |
ch14_board_photo.png | 비스듬히 찍힌 화이트보드. 꼭짓점 (62,40), (268,22), (296,214), (34,198) | 320×240, 컬러, 23KB | 14장 본문, 실습 5 |
ch14_docs/ | 비스듬한 문서 셋(notice, receipt_a, receipt_b, 320×240)과 바로 본 원본 _flat(180×240), 네 꼭짓점을 일부러 섞은 순서로 적은 corners.json | 16~27KB | 14장 프로젝트 |
ch15_conveyor.mp4 | 컨베이어 벨트 위로 상자 셋이 지나가는 동영상 | 320×240, 10fps, 80프레임, 77KB | 15장 본문, 실습 1, 2, 5 |
ch15_yard.mp4 | 마당 앞으로 빨간 공(15~54프레임)과 파란 수레(30~59프레임)가 지나가는 동영상 | 240×180, 10fps, 60프레임, 40KB | 15장 본문, 실습 3, 4 |
ch15_parking.mp4 | 주차장 입구 앞을 자동차 3대가 지나가고 40~49프레임에 낙엽이 날리는 동영상 | 240×160, 10fps, 150프레임, 75KB | 15장 본문, 프로젝트 |
ch16_raw/ 의 39개(사진 38개, answer.csv) | 사과·귤·라임 가상 사진(160×120~320×240, png 31·jpg 7). 깨짐·빈 파일·작음·흑백·투명·흐림·어두움·밝음·중복을 일부러 섞었고, 정답표에 파일마다 문제와 처리(버림·고침)를 적었다 | 약 430KB | 16장 본문, 실습 1~5, 프로젝트 |
ch17_raw/ 의 62개(part_001~060.png, annotations.csv, mistakes.csv) | 컨베이어 위 볼트·너트·와셔를 위에서 본 그림 60장(320×240, 물체 1~5개, 어두운 그림 9장, 먼지 낀 그림 9장)과 라벨링 도구에서 내보낸 것처럼 꾸민 주석(픽셀 좌표, 182줄, 연습용 실수 12건)과 그 실수의 정답 | 약 570KB | 17장 본문, 실습 1, 3, 4, 5 |
ch17_inbox/ | 여러 곳에서 받은 그림 폴더를 흉내 냄: 크기·확장자가 다른 그림, 대문자 확장자, 아주 작은 그림, 깨진 그림, 빈 파일, 글 파일, 하위 폴더 | 27KB | 17장 본문, 실습 2 |
yolo11n.pt | 가장 작은 YOLO 가중치(COCO 80가지 물체로 미리 학습됨, 라이선스 AGPL-3.0). 내려받은 실제 파일이다 | 5.4MB | 18장 실습 1, 2 |
ch19_incoming/ 의 26개(belt_001~024, answer.csv, issues.csv) | 17장과 같은 양식의 새 부품 그림 24장(png·jpg). 어두움, 노이즈, 아주 어두움, 흐림, 640×480, 복사본, 다시 저장한 중복, 깨짐, 빈 파일을 섞었다. 정답 상자 64줄과 그림마다의 문제 | 약 240KB | 19장 실습 1, 2, 3, 프로젝트 |
ch19_belt.mp4, ch19_belt_answer.csv | 부품 5개가 지나가는 동영상(320×240, 10fps, 48프레임)과 프레임마다 반 넘게 보이는 부품의 상자 | 20KB, 3KB | 19장 본문, 실습 5 |
ch20_demo/ 의 11개(part_01~10.png, answer.csv) | 17장과 같은 양식의 부품 그림 8장(어두운 그림 2장, 잡티 낀 그림 2장), 깨진 그림 1장, 복사본 1장, 정답표(bolt 6·nut 5·washer 7, 넓이 포함) | 약 100KB | 20장 본문, 프로젝트 |
그림 속 자리
1장 실습 3이 픽셀 값을 읽는 자리입니다. 배열은 [세로, 가로] 순서로 꺼냅니다.
| 물건 | 가운데 자리 (가로, 세로) | 반지름 | 색(BGR) |
|---|---|---|---|
| 사과 | (80, 140) | 38 | (40, 40, 210) |
| 귤 | (165, 145) | 33 | (30, 140, 250) |
| 라임 | (245, 142) | 35 | (60, 170, 90) |
2장부터의 그림 속 값
| 파일 | 알아 둘 값 |
|---|---|
ch02_market.png | 수박의 가운데 (60, 186), 반지름 36. 실습 3이 [행, 열]로 잘라 낸다 |
fruit_basket.png | HSV 의 H(색상): 사과 1·3·174, 바나나 25, 라임 50, 포도 142, 바구니 14. 빨강이 0 근처와 179 근처 두 구간에 있다 |
ch04_scenes/ | B·G·R 평균: 노을 61.1·86.6·185.5, 호수 200.2·151.0·104.2, 숲 93.6·161.3·109.9 |
ch04_exposure/ | 흑백 평균(표준편차): 알맞음 121.4(68.3), 어둡게 41.9, 밝게 203.9, 대비 낮게 125.2(20.3) |
ch05_train/ | 흑백 평균 36.8~200.3. 4장 판정으로 정상 1장, 고칠 사진 5장 |
ch05_backlit.png | 흑백 평균 74.9, 책장 부분(세로 40~164, 가로 15~114)의 표준편차 13.0 |
ch06_board.png | 고른 면 [165:215, 30:60] 의 밝기 60, 밝기 경계는 가로 160. 노이즈는 실습 코드에서 씨앗 600, 표준편차 20 으로 더한다 |
ch07_sign.png, ch07_parts.png | 노이즈는 실습 코드에서 씨앗 711~724 로 더한다. 부품 그림의 얇은 금은 밝기 120, 가로 110 |
ch08_parts.png, ch08_shadow_doc.png | Otsu 가 고르는 임계값: 부품 136, 안내문 137 |
ch09_letters_*, ch09_inspect/ | 흰 잡티는 실습 코드에서 씨앗 911·912 로 더한다. 글자는 putText 의 부드러운 가장자리를 127 로 나눠 0/255 로 만들었다 |
ch10_shapes.png | 네모 가로 60~139·세로 40~119, 원 가운데 (230, 80) 반지름 40, 계단 띠 가로 160~299·세로 150~219. 노이즈는 실습 코드에서 씨앗 1010, 표준편차 20 |
ch10_road.png | 정지선 세로 160~171. 자동차(흑백 93)는 아스팔트(70)와 밝기가 비슷해 경계가 약하다 |
ch11_set/ | 노이즈는 실습 코드에서 씨앗 1111, 1112, 1130. 점수는 정답 경계를 3×3 팽창해 1칸 여유를 둔 정밀도·재현율·F1 |
ch12_tray.png | 윤곽선 51개 가운데 면적 100 이상이 부품 12개. connectedComponentsWithStats 도 같은 12개 |
ch13_shapes.png, ch13_signs.png | approxPolyDP 의 epsilon 비율 0.01 에서 모두 맞힌다(0.02 에서는 원을 팔각형으로 본다) |
ch15_*.mp4 | mp4v 코덱. 데이터를 만들 때는 영문 임시 폴더에 쓴 뒤 bytes 로 옮긴다(VideoWriter 도 한글 경로에 쓰지 못한다) |
ch16_raw/ | 흐림 점수(Laplacian 분산): 흐린 사진 3.2·4.8·6.1, 선명한 사진은 203.8 이상. 기준은 흐림 100, 해밍 거리 5 |
ch17_raw/ | 클래스 번호 0 bolt, 1 nut, 2 washer. 검사를 통과한 56장을 씨앗 1717 로 8:2 로 나눈다(학습용 45장·물체 146개, 검증용 11장·물체 26개) |
ch19_incoming/ | 이 데이터에 맞춰 기준을 다시 정했다: 흐림 30, 아주 어두움 30, 밝기 고침 50, 평균 해시 거리 2 |
실습이 만드는 파일
out_ 으로 시작하는 파일은 실습이 만듭니다. 지워도 실습을 다시 돌리면 생깁니다.
| 파일 | 만드는 곳 | 내용 |
|---|---|---|
out_ch01_first.png | 1장 실습 2 | 파랑, 초록, 빨강 세 칸으로 칠한 첫 그림 |
out_ch01_edges.png | 1장 실습 5 | 과일 진열대의 테두리만 남긴 흑백 그림 |
out_ch01_contact.png | 1장 프로젝트 | 정상으로 읽힌 그림 셋을 이어 붙인 미리보기 |
out_ch02_png.png, out_ch02_q95.jpg, out_ch02_q80.jpg, out_ch02_q50.jpg, out_ch02_q20.jpg, out_ch02_q5.jpg | 2장 실습 2 | 상품 그림을 PNG 와 JPG 품질별로 저장한 것 |
out_ch02_watermelon.png | 2장 실습 3 | 진열대에서 잘라 낸 수박(76×76) |
out_ch02_zoom.png, out_ch02_tag.png | 2장 실습 5 | 가격표 확대 비교 그림(savefig)과 잘라 낸 가격표(imwrite) |
out_ch02_report.png | 2장 프로젝트 | 상품 번호 부분의 형식별 확대 비교 보고서 |
out_ch03_red_mask.png, out_ch03_red_only.png | 3장 실습 5 | 빨강 마스크(흑백)와 빨강만 남긴 그림 |
out_ch03_masks.png | 3장 프로젝트 | 원본, 네 색의 마스크, 네 색만 남긴 그림 |
out_ch04_swapped.png | 4장 실습 2 | 노을 그림의 빨강과 파랑 채널을 바꾼 그림 |
out_ch04_report.png | 4장 프로젝트 | 노출 네 장의 사진, 히스토그램, 판정을 모은 진단 보고서 |
out_ch05_color_eq.png | 5장 실습 5 | YCrCb 의 Y 만 평활화한 과일 상자 |
out_ch05_fixed/ (6장) | 5장 프로젝트 | 판정에 맞게 고친 학습 사진 |
out_ch05_report.png | 5장 프로젝트 | 원본과 고친 사진의 전후 판정 격자 |
out_ch06_best.png, out_ch06_compare.jpg | 6장 프로젝트 | 가장 좋은 설정(Gaussian 3×3)의 결과와 2×2 비교 그림(크기 때문에 jpg) |
out_ch07_compare.jpg | 7장 프로젝트 | 노이즈 3종에 네 필터를 건 비교 격자(크기 때문에 jpg) |
out_ch08_doc_binary.png | 8장 실습 3 | Adaptive GAUSSIAN_C 로 이진화한 안내문 |
out_ch08_receipts.png | 8장 프로젝트 | 영수증 원본, 정답, 세 방법의 결과 격자 |
out_ch09_opened.png | 9장 실습 3 | 열기 5×5 로 흰 잡티를 지운 글자 |
out_ch09_closed.png | 9장 실습 4 | 닫기 5×5 로 틈과 구멍을 메운 글자 |
out_ch09_cleaned.png, out_ch09_compare.png | 9장 프로젝트 | 다듬은 두 마스크와 전후 비교 격자 |
out_ch10_edges.png | 10장 실습 3 | 기울기 크기 100 을 넘는 칸을 남긴 경계 지도 |
out_ch10_lanes.png | 10장 프로젝트 | 세로 선은 빨강, 가로 선은 파랑으로 칠한 도로 그림 |
out_ch11_compare.jpg | 11장 프로젝트 | 노이즈 30 의 세 그림에 세 방법을 건 결과 격자 |
out_ch12_parts.png | 12장 프로젝트 | 두 컨베이어 사진에 상자, 번호, S·M·L 을 그린 결과 |
out_ch13_named.png | 13장 실습 3 | 도형 판에 규칙으로 붙인 영어 이름 |
out_ch13_label.png | 13장 실습 4 | 여백 10칸을 주고 잘라 낸 송장 |
out_ch13_processed.png | 13장 실습 5 | 전화번호 줄을 흐리게 하고 송장만 이진화해 붙인 사진 |
out_ch13_signs.png | 13장 프로젝트 | 표지판 ROI 8개를 64×64 로 잘라 이은 미리보기 |
out_ch14_letterbox.png | 14장 실습 2 | 128×128 레터박스 세 장을 이은 그림 |
out_ch14_board_flat.png | 14장 실습 5 | 바로 편 화이트보드 |
out_ch14_docs.png | 14장 프로젝트 | 바로 펴고 크기를 맞춘 문서 세 장 |
out_ch15_edges.mp4 | 15장 실습 2 | 프레임마다 Canny 경계를 찾은 동영상 |
out_ch15_background.png | 15장 실습 4 | 60장의 중앙값으로 만든 배경 |
out_ch15_summary.png | 15장 프로젝트 | 지나간 자동차 셋의 대표 프레임을 모은 요약 사진 |
out_ch16_quality.csv | 16장 실습 2 | 흐림 점수와 밝기 점수의 품질 표 |
out_ch16_aug_grid.png, out_ch16_aug8.png | 16장 실습 4, 5 | 증강을 한 장씩 보인 격자와 랜덤 증강 여덟 장 |
out_ch16_removed.csv, out_ch16_dataset/, out_ch16_preview.png | 16장 프로젝트 | 버린 파일과 이유, 128×128 로 맞추고 학습용만 증강한 묶음(train·test/클래스), 미리보기 |
out_ch17_gray/, out_ch17_log.csv | 17장 실습 1 | 흑백 160×120 사본 60장과 처리 기록 |
out_ch17_inbox/, out_ch17_inbox_log.csv | 17장 실습 2 | 처리에 성공한 그림과 실패 이유가 든 기록 |
out_ch17_problems.csv | 17장 실습 4 | 주석 검사기가 찾은 실수 12건 |
out_ch17_yolo/ | 17장 실습 5 | YOLO 데이터셋(images·labels × train·val, data.yaml). 18장에서 학습에 쓴다 |
out_ch17_check.png | 17장 프로젝트 | 무작위 여섯 장에 라벨을 그린 확인 격자 |
out_ch18_runs/parts/ | 18장 실습 2 | 전이 학습 결과(weights/best.pt, last.pt, results.csv). 18장 실습 3~5·프로젝트와 19·20장에서 쓴다 |
out_ch18_report.png | 18장 프로젝트 | 조건 4 × 처리 3 의 결과 격자 |
out_ch19_passed.csv, out_ch19_filter_log.csv | 19장 실습 1 | 거르기를 통과한 그림과 탈락 이유 |
out_ch19_prepped/, out_ch19_prepped.csv | 19장 실습 2 | 다듬은 그림과 손질 기록 |
out_ch19_detections.csv | 19장 실습 3 | 찾은 물체 표 |
out_ch19_boxes.png, out_ch19_summary.csv | 19장 실습 4 | 상자 그린 격자와 요약 표 |
out_ch19_video_counts.csv | 19장 실습 5 | 프레임별 물체 수 |
out_ch19_config.json, out_ch19_report.csv, out_ch19_report.png | 19장 프로젝트 | 파이프라인 설정, 보고서 표와 그림 |
out_ch20_plan.csv | 20장 실습 1 | 수업 계획표 |
out_ch20_exercise/ | 20장 실습 2 | 쉬움·보통·어려움 연습 그림과 정답 마스크, answer.csv |
out_ch20_grades.csv | 20장 실습 3 | 자동 채점 결과 |
out_ch20_compare.png, out_ch20_onepage.png | 20장 실습 4 | 전후 비교 격자와 한 장 요약 |
out_ch20_class_kit/, out_ch20_class_kit.zip | 20장 실습 5 | 수업 자료 묶음 |
out_ch20_final.csv, out_ch20_final.png, out_ch20_worksheet.png | 20장 프로젝트 | 종합 데모의 결과 표와 그림, 학습지 |
파일을 다시 만들려면
데이터는 tools/make_data.py 로 만들었습니다. 난수 씨앗을 고정해 두어서 다시 실행해도 같은 파일이 나옵니다. OpenCV 가 설치된 가상환경에서 과목 폴더를 작업 폴더로 두고 실행합니다. 2장부터의 그림 정의는 tools/parts/chNN.py 에 있고, make_data.py 가 함께 읽습니다.
python tools/make_data.py # data 폴더에 실습용 그림을 다시 만든다