OpenCV Computer Vision

จาก Morange Wiki
รุ่นแก้ไขเมื่อ 03:30, 11 สิงหาคม 2559 โดย Patcharapun (คุย | มีส่วนร่วม)
(ต่าง) ←รุ่นแก้ไขก่อนหน้า | รุ่นแก้ไขล่าสุด (ต่าง) | รุ่นแก้ไขถัดไป→ (ต่าง)
How OpenCV Work on Linux with Python Language.

OpenCV

What IS CV?

  • CV ย่อมากจากคำว่า Computer Vision คือ การนำเทคโนโยลีสารสนเทศต่างๆ ทั้ง ภาพ และ วิดีโอ มาประมวลผลโดยนำหลักการทางคณิตศาสตร์เข้ามาช่วยในการพัฒนา


  • OpenCV หรือ Open Source Computer Vision เป็น Library สำหรับเขียนโปรแกรมหรือพัฒนาซอฟต์แวร์ให้สามารถประมวลผลภาพได้ ในทั้งนี้ในด้านธุรกิจและบริการที่จะสามารถมองเห็นภาพให้ชัดเจนได้เลยอาจจะยกตัวอย่างว่า ระบบตรวจจับใบหน้า (Face Detection) และ ในด้านการประมวลผลภาพ (Image Processing) จะสามารถที่จะพัฒนาเป็น ระบบที่นำรูปภาพทั้งรูปมาประมวลผล เช่น ซอฟต์แวร์ที่นำภาพใบของพืชมาตรวจหาโรคโดย ใช้การประมวลผลภาพรวมกับดาต้าไมนิ่ง ทั้งนี้ OpenCV ยังสามารถพัฒนาในด้านของ Machine Learning ได้อีกด้วย


เริ่มต้นใช้งาน

Gui Features in OpenCV

เรียนรู้การโหลดภาพและบันทึกกลับ
เรียนการเล่นวีดีโอ การจับภาพจากกล้องถ่ายรูปและเขียนเป็นวีดีโอ
เรียนรู้การวาดเส้นสี่เหลี่ยม, วงรี, วงกลม ฯลฯ ด้วย OpenCV
เรียนรู้การใช้เมาส์วาด
สร้าง trackbar เพื่อควบคุมพารามิเตอร์

Object Detection


Core Operations

เรียนรู้การอ่านและแก้ไขค่าพิกเซล ด้วยการทำงานกับภาพ ROI และพื้นฐานกระบวนการอื่นๆ
เรียนรู้หลักการทางคณิตศาสตร์มาใช้งานกับรูปภาพ
เพิ่มความรวดเร็วและประสิทธิภาพให้กับซอฟต์แวร์ที่คุณพัฒนา


Image Processing in OpenCV

เรียนรู้ที่จะเปลี่ยนภาพ ช่องว่างระหว่างสีที่แตกต่าง เรียนรู้ที่จะติดตามวัตถุสีในวิดีโอ
เรียนรู้ที่จะใช้การแปลงทางเรขาคณิตที่แตกต่างกันไปเช่น การหมุนภาพ, การแปล ฯลฯ
เรียนรู้ที่จะแปลงภาพให้ภาพไบนารีใช้ thresholding
เรียนรู้ที่จะเบลอภาพ กรองภาพที่มีเมล็ดที่กำหนดเอง ฯลฯ
เรียนรู้เกี่ยวกับการเปลี่ยนแปลงทางสัณฐานวิทยา
เรียนรู้ที่จะหาภาพการไล่ระดับสีขอบ
เรียนรู้ที่จะหาขอบกับการตรวจหาขอบ
เรียนรู้เกี่ยวกับปิรามิดของภาพและวิธีการที่จะใช้สำหรับการผสมภาพ
ทุกอย่างเกี่ยวกับรูปทรงใน OpenCV
ทุกอย่างเกี่ยวกับ histograms ใน OpenCV
ภาพที่แตกต่างกันใน OpenCV เช่นแปลงฟูเรียโคไซน์แปลง ฯลฯ
เรียนรู้ที่จะค้นหาวัตถุในภาพโดยใช้แม่แบบการจับคู่
เรียนรู้ที่จะตรวจสอบเส้นในภาพ
เรียนรู้ที่จะตรวจสอบวงกลมในภาพ
เรียนรู้ที่จับภาพส่วนที่มีการแบ่งส่วนลุ่มน้ำ
เรียนรู้ที่จะดึงหน้าด้วยวิธี GrabCut


Video Analysis

เรียนรู้การติดตามแบบ color-based tracking โดยใช้ Meanshift และ Camshift
เรียนรู้เกี่ยวกับแนวคิดเกี่ยวกับ "Optical Flow" ที่เกี่ยวกับ Video
เรียนรู้ในการแยก Foreground และ Background โดยการรู้จักวัตถุนั้นๆ


Camera Calibration and 3D Reconstruction

เรียนรู้ใช้งานกล้องที่ดีและการถ่ายด้วยมือ หากมีความเพี้ยนของภาพจะแก้อย่างไร
เรียนรู้เรื่องเล็กๆน้อยๆเกี่ยวกับการสร้างงาน 3 มิติกับโมดูล Calib
เรียนรู้และเข้าใจเรื่องเรณาคณิต Epipolar และข้อจำกัดของ Epipolar
เรียนรู้เกี่ยวกับข้อมูลเชิงลึกของภาพ 2 มิติ

Machine Learning

เรียนรู้ใช้งาน kNN สำหรับจำแนก Plus เกี่ยวกับการเขียนด้วยมือเปล่าโดยใช้ kNN
เข้าใจแนวคิดของ SVM
เรียนรู้เกี่ยวกับการใช้ K-Means Clustering เพื่อหากลุ่มของตัวเลขของ Clusters และเรียนรู้การทำ Quantization Color โดยใช้ K-Means Clustering

อ้างอิง

[OpenCV.org]