๐ Computer_Vision
OpenCV DNN ํจํค์ง๋ฅผ ์ด์ฉํ์ฌ SSD๊ธฐ๋ฐ Object Detection ์ํ Tensorflow ์์ Pretrained ๋ ๋ชจ๋ธ ํ์ผ์ OpenCV์์ ๋ก๋ํ์ฌ ์ด๋ฏธ์ง์ ์์์ ๋ํ Object Detection์ ์ํํด๋ณด๊ฒ ์ต๋๋ค.์
๋ ฅ ์ด๋ฏธ์ง๋ก ์ฌ์ฉ๋ ์ด๋ฏธ์ง ๋ณด๊ธฐimport cv2import matplotlib.pyplot as plt%matplotlib inlineimg = cv2.imread('../../data/image/beatles01.jpg')img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)print('image shape:', img.shape)plt.figure(figsize=(12, 12))plt.imshow(img_rgb)Tensorflow์์..
๐ Computer_Vision
OpenCV DNN ์ฅ๋จ์ OpenCV Deep Neural Network์ ์ฅ๋จ์ ์ ๋ฐํ์ฌ ์์๋ณด๊ฒ ์ต๋๋ค.OpenCV ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ Intel์ ์ํ์ฌ ์ต์ด ๊ฐ๋ฐ ๋์์ต๋๋ค. ์ฅ๋จ์ ์ ์ค๋ช
ํด๋ณด๊ฒ ์ต๋๋ค.OpenCV DNN ์ฅ์ ๋ฅ๋ฌ๋ ๊ฐ๋ฐ ํ๋ ์ ์ํฌ ์์ด ์ฝ๊ฒ Inference๋ฅผ ๊ตฌํ ๊ฐ๋ฅ ํฉ๋๋ค.OpenCV์์ ์ง์ํ๋ ๋ค์ํ Computer Vision ์ฒ๋ฆฌ ๋ฐ API์ Deep learning์ ์ฝ๊ฒ ๊ฒฐํฉํ ์ ์๋ค๋ ํน์ง์ด ์์ต๋๋ค.OpenCV DNN ๋จ์ GPU ์ง์ ๊ธฐ๋ฅ์ด ์ฝํฉ๋๋ค.DNN ๋ชจ๋์ ๊ณผ๊ฑฐ์ NVIDIA GPU ์ง์์ด ๋์ง ์์์ต๋๋ค. 2019๋
10์์ Google์์ NVIDIA GPU ์ง์ ๋ฐํํ์ง๋ง. ์์ง ํ๊ฒฝ ๊ตฌ์ฑ/์ค์น๊ฐ ์ด๋ ต์ต๋๋ค. ์ ์ฐจ ๊ฐ์ ์์
์ด ์งํ์ค์
๋๋ค.OpenCV๋ ..
๐ Computer_Vision
Faster R-CNNFaster R-CNN์ R-CNN ๊ณ์ด์ Object Detection ๋ชจ๋ธ ์ค์์ ๊ฐ์ฅ ์ง๋ณด๋ ๋ชจ๋ธ ์ค ํ๋๋ก, Object Detection ์์ ๋งค์ฐ ๋์ ์ ํ๋์ ํจ์จ์ฑ์ ์ ๊ณตํฉ๋๋ค.๋ํ Region Proposal Network (RPN)๋ฅผ ๋์
ํ์ฌ ์ ์ฒด ์์คํ
์ ์๋์ ์ ํ๋๋ฅผ ํฌ๊ฒ ํฅ์์์ผฐ์ต๋๋ค.Faster R-CNN์ RPN(Region Proposal Network) + Fast R-CNN์ด ํฉ์ณ์ง ๋ชจ๋ธ์
๋๋ค.๊ธฐ์กด Selective Search๊ฐ ์ํํ๋ Object ์์น์ Bounding Box๋ฅผ ๊ทธ๋ ค์ ์ถ์ฒํฉ๋๋ค. (GPU ์ฌ์ฉ)๋ํ Region Proposal Network๋ฅผ ์ฌ์ฉํฉ๋๋ค. (Selective Search ์ญํ )๊ทธ๋ฆฌ๊ณ Network๋ก๋ง ๊ตฌ์ฑ์ด ๋..
๐ Computer_Vision
Fast R-CNN ๊ฐ์ FAST R-CNN์ R-CNN (Region-based Convolutional Neural Network)๊ณผ SPP-Net (Spatial Pyramid Pooling Network)์ ๋จ์ ์ ๋ณด์ํ๊ณ , ๊ฐ์ฒด ํ์ง์ ์๋์ ์ ํ์ฑ์ ํฌ๊ฒ ๊ฐ์ ํ ๋ชจ๋ธ์
๋๋ค Fast R-CNN์ ์ด๋ฌํ ์์๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.์
๋ ฅ ์ด๋ฏธ์ง: ์๋ณธ ์ด๋ฏธ์ง์ Region Proposal์ด ์
๋ ฅ๋ฉ๋๋ค.๊ณตํต CNN: ์ด๋ฏธ์ง์์ Feature Map(ํน์ง ๋งต)์ ์ถ์ถํฉ๋๋ค.RoI Pooling Layer: ๊ฐ Region Proposal์ ๊ณ ์ ๋ ํฌ๊ธฐ์ *Feature Map(ํน์ง ๋งต)์ผ๋ก ๋ณํํฉ๋๋ค.์์ ์ฐ๊ฒฐ ์ธต: ๊ณ ์ ๋ ํฌ๊ธฐ์ *Feature Map(ํน์ง ๋งต)์ ์
๋ ฅ์ผ๋ก ๋ฐ์ Classificatio..
๐ Computer_Vision
SPPNet - Spatial Pyramid Pooling Net์ด๋ฒ์๋ SPPNet - Spatial Pyramid Pooling Net์ ๋ฐํ์ฌ ์์๋ณด๊ณ ์ SPPNet์ด ๋ฑ์ฅํ๋์ง ํ๋ฒ ์์ ๋ณด๊ฒ ์ต๋๋ค. RCNN ์ฃผ์ ๋ฌธ์ ์ ๊ทธ์ ์ RCNN์ ์ฃผ์ ๋ฌธ์ ์ ์ ๋ฐํ์ฌ ํ๋ฒ ์์๋ณด๊ฒ ์ต๋๋ค.์ผ๋จ, CNN์ 2,000๊ฐ์ Region ์์ญ ์ด๋ฏธ์ง๊ฐ CNN์ผ๋ก ์
๋ ฅ ๋๋ฉด์ Object Detection ์ํ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฝ๋๋ค.์ด์ ๋ ์์ ๊ทธ๋ฆผ์ ๋ณด๋ฉด ์ ์ ์๋ฏ์ด 2,000๊ฐ์ Region ์์ญ์ด Proposal ๋์ด์ผ ํฉ๋๋ค.๊ทธ๋ฌ๋ฉด Feature Map์ด 2,000๊ฐ๊ฐ ๋ง๋ค์ด ์ ์ผ ํฉ๋๋ค. ์ด๋ก ์ธํด์ ๋จพ์ ์ฐ์ฐ์ด ํ์ํ๋ฉฐ ์ฒ๋ฆฌ ์๊ฐ์ด ๊ธธ์ด์ง๋๋ค.๋ํ Region ์์ญ ์ด๋ฏธ์ง๊ฐ ๊ณ ์ ๋ ํฌ๊ธฐ๋ก Crop / W..
๐ Computer_Vision
์ด๋ฒ ๊ธ์์๋ Object Detection Network ๊ตฌ์กฐ ๊ฐ์, FPS, Resolution๊ณผ ์ฑ๋ฅ ์๊ด ๊ด๊ณ, R-CNN ์ ๋ฐํ์ฌ ์์ ๋ณด๊ฒ ์ต๋๋ค. Object Detection Network ๊ฐ์Object Detetction Network ๊ตฌ์กฐ๋ ๋ ๋ถ๋ถ์ผ๋ก ๋๋ ์ ์์ต๋๋ค:ํน์ง ์ถ์ถ ๋คํธ์ํฌ(Feature Extractor Network)์ ๊ฐ์ฒด ํ์ง ๋คํธ์ํฌ(Object Detection Network)์
๋๋ค.๋ ๋คํธ์ํฌ๋ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ ํ์ต๋ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ํน์ ์์
์ ๋ง๊ฒ ๋ฏธ์ธ ์กฐ์ ๋ฉ๋๋ค. Feature Extractor Network (ํน์ง ์ถ์ถ ๋คํธ์ํฌ)์
๋ ฅ ์ด๋ฏธ์ง์์ ์ ์ฉํ ํน์ง์ ์ถ์ถํฉ๋๋ค.VGG, ResNet, Inception ๋ฑ๊ณผ ๊ฐ์ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ฉฐ, ๋ณดํต Ima..
๐ Computer_Vision
Object Detection & Segmentation์ ์ํ ๋ค์ํ ํจํค์ง๋คObject Detection & Segmentation์ ์ํ ๋ค์ํ ํจํค์ง๋ค์ด ์์ต๋๋ค.Keras์ Tensorflow ๊ธฐ๋ฐ์ ๋ค์ํ ์คํ์์ค ํจํค์ง๋ค์ฌ์ด ํ์ฉ๊ณผ Customization ๊ฐ๋ฅํ ์ฅ์ ์ด ์์ต๋๋ค.๋ค๋ง Object Detection ์๊ณ ๋ฆฌ์ฆ ๋ณ๋ก ์๋ก ๋ค๋ฅธ ํจํค์ง๋ค์ ์ ์ฉํด์ผ ํ๋ ๋จ์ ์ด ์์ต๋๋ค.OpenCV ์ DNN(Deep Neural Network) ๋ชจ๋๊ฐํธํ๊ฒ Object Detection Inference๊ฐ ๊ฐ๋ฅํฉ๋๋ค.๋ค๋ง ํ์ต์ด ๋ถ๊ฐ๋ฅํ๋ฉฐ ์ฃผ๋ก CPU ์์ฃผ๋ก GPU ํ์ฉ์ด ์ด๋ ต๋ค๋ ์ ์ด ์์ต๋๋ค.Tensorflow Object Detection API๊ฐ์ฅ ๋ง์ Detection ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฉ์ด ..
๐ Computer_Vision
OpenCV ์์ ์ฒ๋ฆฌ ๊ฐ์ํ๋ฒ OpenCV์ ์์์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ๋ฐํ์ฌ ์์๋ณด๊ฒ ์ต๋๋ค.OpenCV์ VideoCaptureํด๋์ค๋ ๋์์์ ๊ฐ๋ณ Frame์ผ๋ก ํ๋์ฉ ์ฝ์ด(Read)๋ค์ด๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.VideoWriter๋ VideoCapture๋ก ์ฝ์ด๋ค์ธ ๊ฐ๋ณ Frame์ ๋์์ ํ์ผ๋ก Write๋ฅผ ์ํํฉ๋๋ค.VideoCapture.read() - ์์์ ๋ค์ Frame์ ์ฝ์ต๋๋ค.VideoWriter.write() - ์์์ Frame์ write ํฉ๋๋ค.cap = cv2.VideoCapture(video_input_path)…………vid_writer = cv2.VideoWriter(video_output_path, …..)while True:hasFrame, img_frame = cap.read..
๐ Computer_Vision
Python ๊ธฐ๋ฐ ์ฃผ์ ์ด๋ฏธ์ง ๋ผ์ด๋ธ๋ฌ๋ฆฌํฌ๊ฒ 3๊ฐ์ง๊ฐ ์์ต๋๋ค.PIL (Python Image Library)์ฃผ๋ก ์ด๋ฏธ์ง ์ฒ๋ฆฌ๋ง์ ์ํด ์ฌ์ฉํฉ๋๋ค.์ฒ๋ฆฌ ์ฑ๋ฅ์ด ์๋์ ์ผ๋ก ๋๋ฆฌ๋ค๋ ๋จ์ ์ด ์์ต๋๋ค.Scikit-Imageํ์ด์ฌ ๊ธฐ๋ฐ์ ์ ๋ฐ์ ์ธ ์ปดํจํฐ ๋น์ ๊ธฐ๋ฅ ์
๋๋ค.์ฌ์ดํ์ด(Scipy)์ ๊ธฐ๋ฐํ๊ณ ์์ต๋๋ค.OpenCV์คํ์์ค ๊ธฐ๋ฐ์ ์ต๊ณ ์ธ๊ธฐ ์ปดํจํฐ ๋น์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์
๋๋ค.์ปดํจํฐ ๋น์ ๊ธฐ๋ฅ ์ผ๋ฐํ์ ํฌ๊ฒ ๊ธฐ์ฌ ํ๋ค๋ ํน์ง์ด ์์ต๋๋ค.(์ด๋ ค์ด ๊ธฐ๋ฅ๋ API ๋ช์ค๋ก ๊ฐ๋จํ๊ฒ ๊ตฌํ์ด ๊ฐ๋ฅํฉ๋๋ค.)C++ ๊ธฐ๋ฐ์ด๋ Python๋ ์ง์ํฉ๋๋ค. (Java, C# ๋ฑ ๋ค์ํ ์ธ์ด ์ง์) OpenCV ํน์งOpenCV (Open Source Computer Vision Library)๋ ์ปดํจํฐ ๋น์ ๊ณผ ๋จธ์ ๋ฌ๋์ ์ํ ์คํ..
๐ Computer_Vision
์ฃผ์ Dataset๋ง์ Detection & Segmentation DL ํจํค์ง๊ฐ ์๋์ Dataset๋ค์ ๊ธฐ๋ฐ์ผ๋ก Pretrained ๋์ด ๋ฐฐํฌ๋์์ต๋๋ค.PASCAL VOC: XML Format, 20๊ฐ์ Object CategoryBounding Box ์์์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค(XML), ๊ทธ๋ฆฌ๊ณ ํ๋์ Image์ ๋ฐํ์ฌ Annotation ํฉ๋๋ค. MS COCO: json Form, 80๊ฐ์ ์ค๋ธ์ ํธ ์นดํ
๊ณ ๋ฆฌGoogle Open Images: csv Format, 600๊ฐ์ ์ค๋ธ์ ํธ ์นดํ
๊ณ ๋ฆฌ PASCAL VOC 2012PASCAL VOC(Pattern Analysis, Statistical Modelling and Computational Learning Visual Object Classes)..