[iOS Dev] Face Detection with Core Image (Part II)

มาต่อกันนะครับ Blog ที่แล้วเราทำการ Detect ได้จุดของวัตถุต่างๆ ละ 
คราวนี้เราจะทำการวาดกรอบของสิ่งที่เรา Detect ได้กัน
ผลลัพธ์ที่ได้ก็ประมาณนี้นะ 

ปัญหาแรกที่จะเกิดขึ้นและทำให้งงคือ Coordinates System ของ UIKit และ Core Image นั้นต่างกัน
และทำให้ใครหลายคน (รวมทั้งตัวผมเอง) งง และเกิด Bug ไปอ่าน Entry นี้กันก่อนนะ :)

[iOS Dev] UIKit and Core Image Coordinates System

เราได้ทำการกะขนาดของ ปาก และ ตา ไว้ดังนี้ (โดยอ้างอิงจากขนาดของใบหน้า)
จากนั้นผมก็จะทำการวาดกรอบของ Face Feature ต่างๆ ซึ่งนี่แแหละ เป็นเรื่องที่ยุ่งยาก เพราะจะวาดเลยก็ไม่ได้เนื่องจาก Coordinates System ไม่เหมือนกัน ตามที่กล่าวไปข้างต้น (Code ส่วนนี้เป็นส่วนหนึ่งของ - (void)faceDetection; ใน Part I)

และเรื่อง Coordinates System ของ UIKit และ Core Image นั้นไม่เหมือนกัน จึงต้องทำการแปลงให้เรียบร้อยก่อน ซึ่งผมก็แยกเขียน method การแปลงจุดและกรอบออกมา
ส่วนเรื่องการวาด ตอนแรกผมนั่งมึนว่าจะใช้อะไรวาดดี = =' ลองใช้ Quartz 2D แล้วสำหรับผมคงยากไป ... ไม่ชอบเลย เลยสดโดยใช้ UIView นี่แหละครับ ง่ายดี ใครอยากวาดวงกลมก็ใช้ QuartzCore Framework ปรับ Corner Radius นะครับ :)

Popular posts from this blog

12 วิธี การบริการและดูแลลูกค้าในร้าน Starbucks

"อีสุกอีใส" ประสบการณ์เมื่อต้องมาเป็นตอนอายุ 22

[Android Dev] การติดตั้ง Eclipse+AndroidSDK เพื่อพัฒนาโปรแกรมบน Android