๐ 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)..
๐ Computer Vision
Precision(์ ๋ฐ๋) & Recall(์ฌํ์จ)์ ๋ฐ๋(Precision)๊ณผ ์ฌํ์จ(Recall)์ ์ฃผ๋ก Binary Classification(์ด์ง ๋ถ๋ฅ)์์ ์ฌ์ฉ๋๋ ์ฑ๋ฅ์งํ ์
๋๋ค.์ ๋ฐ๋(Precision)๋ ์์ธก์ Positive๋ก ํ ๋์ ์ค์ ์์ธก๊ณผ ์ค์ ๊ฐ์ด Positive๋ก ์ผ์นํ ๋ฐ์ดํฐ์ ๋น์จ์ ๋ปํฉ๋๋ค.Object Detection์์๋ ๊ฒ์ถ ์๊ณ ๋ฆฌ์ฆ์ด ๊ฒ์ถ ์์ธกํ ๊ฒฐ๊ณผ๊ฐ ์ค์ Object๋ค๊ณผ ์ผ๋ง๋ ์ผ์นํ๋์ง๋ฅผ ๋ํ๋ด๋ ์งํ์
๋๋ค.์ฌํ์จ(Recall)์ ์ค์ ๊ฐ์ด Positive์ธ ๋์ ์ค์ ์์ธก๊ณผ ์ค์ ๊ฐ์ด Positive๋ก ์ผ์นํ ๋ฐ์ดํฐ์ ๋น์จ์ ๋ปํฉ๋๋ค. ObjectDetection์์๋ ๊ฒ์ถ ์๊ณ ๋ฆฌ์ฆ์ด ์ค์ Object๋ค์ ๋น ๋จ๋ฆฌ์ง ์๊ณ ์ผ๋ง๋ ์ ํํ ๊ฒ์ถ ์์ธกํ๋์ง๋ฅผ ๋ํ๋ด..