Augmented RealityUnity 3D

Vuforia และ Unity ทำ AR แบบ Object Recognition ตรวจจับวัตถุแทน Marker

เบื่อแล้วทำ AR กับ Unity ก็มีแต่ Vuforia จับ Marker ภาพโปสเตอร์ มาเล่นอะไรใหม่ๆ ดีกว่า Object Recognition

ตั้งแต่ทำบทเรียน การสร้าง Augmented Reality ร่วมกับ Unity 5 และ Vuforia แบบง่าย และ Unity: การใช้งาน Lean Touch ร่วมกับ Vuforia บนแอพ AR ก็หันไป AR Foundation แทนละ เพราะเบื่อแล้วกับการทำ AR บน Unity ก็มีแต่คนเล่นแต่ Vuforia จับ Marker ภาพโปสเตอร์  และเห็นสื่อการสอนอะไรมากมายมีนักศึกษาหลายมหาวิทยาลัย มาปรึกษาก็มีแต่ AR ด้วย Unity และ Vuforia ไหนๆ ก็ไหนๆ มีแต่เดิมๆ น่าเบื่อ ลองกลับมา Vuforia แล้วมาลองเล่นอะไรใหม่ๆ ดีกว่าอย่าง Object Recognition จะได้มีคนเอาโปรเจ็คใหม่ๆ มาปรึกษาบ้าง

วิธีการทำคือเราต้องเอามีวัตถุบนโลกจริงๆ 1 ชิ้น และมีไฟล์ .ob ของ Vuforia ซึ่งต้องมี Smart Phone ตระกูล Android เครื่องนึง โดยขั้นตอนการทำ .ob คือ

  1. ดาวน์โหลดติดตั้งแอปพลิเคชัน Vuforia Object Scanner โดยไปดาวน์โหลดที่ https://developer.vuforia.com/downloads/tool (เลื่อนไปล่างๆเลย)
    ดาวน์โหลดมาแล้วมันตะมี APK ให้เราติดตั้งลงสมาร์ตโฟนของเรา และไฟล์ Printing บางอย่าง ใน zip นั้น

    ซึ่งจะไปต่อข้อ 2 เลย
  2.  ในโฟลเดอร์ที่ของ Vuforia Scanner จะมีไฟล์ PDF ไฟล์หนึ่งให้เรา Print (แบบ Color นะ) จะใหญ่เล็กแค่ไหนก็อยู่ที่วัตถุประสงค์การใช้งานสแกน AR ของเรา

    Print มาเลยนะครับเพื่อที่จะมาทำข้อ 3
  3. หาของที่เราอยากจะสแกนไปวางในตำแหน่งตามตัวอย่างของภาพ A4 ที่เรา Print มา แล้วใช้แอปพลิเคชัน Vuforia Scanner ทำการ Scane วัด Calibrate ตามขั้นตอนของแอป ซึ่งขั้นแรกคือวัดมุมจากการวางตำแหน่งภาพกับ ช่องว่างเพื่อรู้พิกัดของขนาดวัตถุ ตัวอย่าง ไหมขัดฟัน จ้า
  4. ต่อมาให้เรากด Record มันจะ trace สีของกล้องเป็นขาวดำเพื่อทำการสร้าง Mesh ครอบวัตถุตามขนาดของมันโดยวางบน Marker ของเรา
    ทำการถ่ายทุกมุมจน Mesh ครอบวัตถุของเราเป็นลักษณะฝาชีคว่ำครอบไว้
  5. ทำการกด record แล้วส่องที่ Mesh ขาวให้กลายเป็นสีเขียวให้ครบทุกส่วน (จริงๆ ไม่ครบก็ได้ แค่ 70% ก็พอ)
  6. ถ้าครบแล้วก็ทำการ บันทึก และแชร์ไป Google Drive จะได้ดาวน์โหลดมาใช้ง่ายๆ

ไปที่ https://developer.vuforia.com เข้าระบบให้เรียบร้อยไปสร้าง Target Manager สร้าง Databaseใหม่

ตั้งชื่ออะไรก็ได้เอาที่สบายใจ

ทำการ Add Target แต่รอบนี้เลือกเป็น 3D Object แล้วก็เอาไฟล์ .od ที่สแกนจาก Vuforia Scanner  ที่เราได้อัพขึ้น Google Drive ดาวน์โหลดลงมาเพื่ออัพโหลดไปเป็น Target  สำหรับสร้าง Database

เสร็จแล้วรอประมวลผล ก็ทำการคลิกที่ Selected ตัว Database ของเรา แล้วดาวน์โหลด

เลือกเป็น Unity Editor แล้วก็เอามาใช้กับ Unity ของเราได้เลย

เปิด Unity ขึ้นมาทำการ Import Vuforia SDK เข้าไปให้เรียบร้อย ใส่  License Key กับกล้อง AR Camera เสีย (ไม่ทวนนะครับ ใครทำไม่ได้ก็นับว่าบาปนะครับพี่น้อง โคตรเบสิค)

ไปทำการ Import  Database มาใช้ดีกว่าไปที่ Assets -> Import Package -> Custom Package เลือก Database ของเราได้เลย

คลิกขวาที่ Hierarchy เลือก Vuforia -> ObjectTarget (3D Scanned)  เป็น GameObject  เสียให้เรียบร้อย

คลิกตรวจสอบว่า มันตรงกับ Database ของเราหรือยัง?

เอา content AR ของเราลากไปเป็นลูกของ Object Target เสียแล้ว Build เพื่อทดสอบดู

ทดสอบหน่อยสิ

ทดสอบก็จะเห็นว่า เราได้เอารถไปครอบ วัตถุได้แล้ว จบ ไม่มีอะไรยาก ลองไปทำกันดูนะครับ

Tags

Asst. Prof. Banyapon Poolsawas

อาจารย์ประจำสาขาวิชาการออกแบบเชิงโต้ตอบ และการพัฒนาเกม วิทยาลัยครีเอทีฟดีไซน์ & เอ็นเตอร์เทนเมนต์เทคโนโลยี มหาวิทยาลัยธุรกิจบัณฑิตย์ ผู้ก่อตั้ง บริษัท Daydev Co., Ltd, (เดย์เดฟ จำกัด)

Related Articles

Back to top button
Close
Close

Adblock Detected

เราตรวจพบว่าคุณใช้ Adblock บนบราวเซอร์ของคุณ,กรุณาปิดระบบ Adblock ก่อนเข้าอ่าน Content ของเรานะครับ, ถือว่าช่วยเหลือกัน