คำถามที่พบบ่อย#

คำถามทั่วไป#

อะไรที่ทำให้ CMUcam1 มีเอกลักษณ์?#

โดยดั้งเดิมแล้วจำเป็นต้องใช้คอมพิวเตอร์ที่รวดเร็วในการจับและประมวลผลภาพกล้อง นอกจากนี้ยังจำเป็นต้องเขียนซอฟต์แวร์เพื่อทำการประมวลผลนี้ ด้วยเหตุนี้จึงเป็นเรื่องยากที่จะใช้การมองเห็นเป็นเซนเซอร์ในระบบอย่างง่าย

ระบบการมองเห็น CMUcam1 ใช้ไมโครคอนโทรลเลอร์ต้นทุนต่ำที่รวดเร็วในการจัดการการประมวลผลความเร็วสูงทั้งหมดของข้อมูลกล้อง และมีซอฟต์แวร์เพื่อทำงานการมองเห็นอย่างง่าย เนื่องจากผู้ใช้สามารถเลือกส่งออกเฉพาะข้อมูลระดับสูงแบนด์วิดท์ต่ำจากระบบการมองเห็นได้ เช่น วัตถุสีแดงอยู่ที่ตำแหน่ง X-Y จึงเป็นไปได้สำหรับโปรเซสเซอร์อย่างง่ายเช่นไมโครคอนโทรลเลอร์ PIC ที่จะอ่านข้อมูลนี้และสั่งการหุ่นยนต์ขนาดเล็กในงานเช่นการไล่ตามลูกบอลสี ระบบการมองเห็น CMUcam1 ทำให้เป็นไปได้ที่จะละเลยความซับซ้อนของการเชื่อมต่อกล้องและใช้การมองเห็นเหมือนเซนเซอร์อื่น ๆ (เช่น โซนาร์) ที่มักใช้ในระบบหุ่นยนต์

อัตราเฟรมของ CMUcam1 คือเท่าใด?#

อัตราเฟรมที่เร็วที่สุดคือ 16.7 เฟรมต่อวินาที ซึ่งหมายความว่า CMUcam1 สามารถบอกตำแหน่งของวัตถุแก่คุณได้ประมาณ 17 ครั้งต่อวินาที การใช้โปรโตคอลซอฟต์แวร์อนุกรมคุณสามารถทำให้ช้าลงได้หากต้องการ

CMUcam1 รองรับอัตราบอดอะไรบ้าง?#

ณ เฟิร์มแวร์เวอร์ชันล่าสุด (v1.12) CMUcam1 สามารถสื่อสารที่อัตราบอด 9600, 19200, 38400 หรือ 115200 อัตราบอดถูกเลือกผ่านการตั้งค่าจัมเปอร์บนบอร์ด

ฉันจะอัปเกรดเฟิร์มแวร์ CMUcam1 ของฉันได้อย่างไร?#

หากคุณกำลังใช้เฟิร์มแวร์ v1.11 อยู่ ก็ไม่มีเหตุผลที่จะอัปเกรด เว้นแต่คุณต้องการการรองรับอัตราบอดที่ต่ำกว่า เวอร์ชัน 1.11 รองรับอัตราบอด 38400 และ 115200 เวอร์ชัน 1.12 รองรับอัตราบอดเหล่านั้นและเพิ่มการรองรับอัตราบอด 9600 และ 19200 หากต้องการอัปเกรดเฟิร์มแวร์ของคุณ คุณจะต้องเขียนโปรแกรมหน่วยความจำแฟลชในชิปโปรเซสเซอร์ของคุณใหม่ หากคุณมีเครื่องเขียนโปรแกรม คุณสามารถดาวน์โหลดเวอร์ชันปัจจุบันจากหน้า ดาวน์โหลด ของเราและแฟลชโปรเซสเซอร์ใหม่ด้วยตัวเอง

CMUcam1 ทำงานกลางแจ้งได้หรือไม่?#

CMUcam1 ทำงานภายนอกอาคารได้แต่ไม่ได้ในแสงแดดโดยตรง กล้อง CMOS ที่เราใช้ไม่มีฟิลเตอร์ IR คุณภาพสูง ดังนั้นแสงแดดจึงทำให้พิกเซลสีแดงอิ่มตัวและภาพกลายเป็น โดยพื้นฐานแล้ว ภาพขาวดำเมื่ออยู่ในแสงแดดโดยตรง เป็นไปได้ที่จะเพิ่มฟิลเตอร์ภายนอกเพื่อปรับปรุงการทำงานภายนอกอาคาร เรามีเอกสารสั้น ๆ ที่แสดงให้คุณเห็นว่าสภาพการส่องสว่างมีผลต่อ CMUcam1 อย่างไร ซึ่งคุณสามารถดาวน์โหลดได้ ที่นี่

ฉันสามารถเขียนโค้ดแบบกำหนดเองสำหรับ CMUcam1 ได้หรือไม่?#

แน่นอน หากต้องการทำเช่นนี้ ให้ขอซอร์สโค้ดเฟิร์มแวร์จากเรา สั่งซื้อสภาพแวดล้อมการเขียนโปรแกรม C สำหรับชิป Ubicom แล้วลงมือเลย เมื่อเราส่งซอร์สโค้ดเฟิร์มแวร์ให้คุณ เราจะส่งสรุปว่าโค้ดมีโครงสร้างอย่างไรและข้อมูลเกี่ยวกับสภาพแวดล้อมการเขียนโปรแกรมที่เราใช้ให้ด้วย

CMUcam1 ใช้พลังงานเท่าไหร่?#

ระบบทั้งหมดใช้กระแสไฟประมาณ 200 มิลลิแอมแปร์

มุมมองภาพ (field of view) ของ CMUcam1 คือเท่าใด?#

สิ่งนี้ขึ้นอยู่กับเลนส์ที่คุณติดกับกล้อง CMOS หากคุณสั่งกล้อง CMOS แบบที่ขายเป็นมาตรฐาน คุณจะได้มุมมองภาพประมาณ 25 องศา ซึ่งค่อนข้างแคบ อย่างไรก็ตาม คุณสามารถสั่งเลนส์มุมกว้างกว่าแบบกำหนดเองได้เมื่อสั่งกล้อง CMOS ของคุณ

CMUcam1 ใช้โปรเซสเซอร์อะไร?#

โค้ดประมวลผลภาพของเราอยู่บนชิปไมโครคอนโทรลเลอร์จาก Ubicom ที่ทำงานที่ 75 MHz คือ SX28AC ชิปนี้อ่านพิกเซลทั้งหมดจากกล้อง CMOS ผ่านอินเทอร์เฟซแบบขนานและทำการประมวลผลทั้งหมดแบบเรียลไทม์ จากนั้นจะสื่อสารผลลัพธ์ไปยังไมโครคอนโทรลเลอร์หรือคอมพิวเตอร์ของคุณผ่านอินเทอร์เฟซพอร์ตซีเรียล

CMUcam1 ใช้กล้อง CMOS อะไร?#

เราใช้กล้อง CMOS ซึ่งใช้กล้อง CMOS แบบชิปเดียว OmniVision OV6620 เราใช้บอร์ดกล้อง CMOS หมายเลขรุ่น C3088 ซึ่งติดตั้งเซนเซอร์ ขั้วต่อ และเลนส์

CMUcam1 ทำงานกับกล้อง CMOS อื่นๆ ได้หรือไม่?#

ไม่ ปัจจุบันระบบฮาร์ดแวร์และซอฟต์แวร์ได้รับการออกแบบมาให้ทำงานเฉพาะกับกล้อง CMOS OmniVision OV6620 เท่านั้น ระบบจะต้องได้รับการออกแบบใหม่ทั้งหมดเพื่อให้ทำงานกับกล้องอื่น

มีที่ไหนที่ฉันสามารถหาคำตอบสำหรับคำถามเพิ่มเติมที่ฉันมีได้บ้าง?#

ได้ เรามีข้อมูลบางส่วนเกี่ยวกับคำถามทางเทคนิคเพิ่มเติมในหน้านี้

ฉันจะหาข้อมูลเพิ่มเติมเกี่ยวกับคอมพิวเตอร์วิชันโดยทั่วไปได้ที่ไหน?#

CMUcam1 ทำงานคอมพิวเตอร์วิชันอย่างง่ายที่มันถูกออกแบบมาให้ทำในแพ็กเกจที่เล็กและราคาไม่แพง อย่างไรก็ตาม ปัญหาคอมพิวเตอร์วิชันทั่วไปที่พยายามจดจำวัตถุใด ๆ ภายใต้เงื่อนไขใด ๆ ยังคงเป็นหัวข้อวิจัยที่ยังคุกรุ่นอยู่มากและยังห่างไกลจากการเป็นปัญหาที่ได้รับการแก้ไขแล้ว

หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการมองเห็นด้วยคอมพิวเตอร์ คุณอาจต้องการลองลิงก์เหล่านี้:

คำถามทางเทคนิค#

ลำดับขั้นตอนที่แน่นอนที่ดำเนินการเมื่อเปิดเครื่องโดยโหมดสาธิตคืออะไร?#

นี่คือลำดับที่แน่นอนที่โหมดสาธิตดำเนินการเมื่อเปิดเครื่อง:

  1. รีเซ็ตกล้อง

  2. รอ 5 วินาทีเพื่อให้การปรับพารามิเตอร์กล้องอัตโนมัติเสถียร

  3. ส่งสตริงรีจิสเตอร์กล้อง: CR 18 32 19 32 ซึ่งเลือกโหมด YCrCb และปิด auto gain

  4. ดำเนินการคำสั่ง TW

หลังจากนั้น กล้องจะเริ่มขับเซอร์โวไปยังจุดกึ่งกลางมวลของสีที่ตรวจพบโดยคำสั่ง TW

ลำดับขั้นตอนที่แน่นอนที่ดำเนินการโดยคำสั่ง "TW" คืออะไร?#

นี่คือลำดับที่แน่นอนที่คำสั่ง TW ดำเนินการ:

  1. ย่อหน้าต่างลงเหลือ 1/4 ของขนาด (ในแต่ละมิติ) ของหน้าต่างปัจจุบัน ไปยังหน้าต่างใหม่ที่มีจุดศูนย์กลางอยู่ที่จุดศูนย์กลางของหน้าต่างปัจจุบัน

  2. เรียก get mean

  3. คืนค่าหน้าต่างให้เป็นขนาดภาพเต็ม

  4. ตั้งค่าสูงสุดและต่ำสุดสำหรับแต่ละแชนเนลสีให้เป็นค่าเฉลี่ยของแชนเนลนั้น +/- 30

หลังจากนั้น กล้องจะเริ่มสตรีมแพ็กเก็ตชนิด C, M หรือ N

ภายใต้เงื่อนไขใดที่ LED การติดตามจะสว่างขึ้นเมื่อเปิดใช้งานโหมดอัตโนมัติ?#

LED จะสว่างขึ้นเมื่อค่าที่ส่งกลับ pixel_count >= 2 ค่าที่ส่งกลับ pixel_count = (actual_pixel_count + 4) / 8

หากกล้อง CMOS มีความละเอียด 352 x 288 พิกเซล เหตุใดความละเอียดของ CMUcam1 จึงเป็นเพียง 80 x 143?#

ประเด็นที่นี่คือกล้องดิจิทัลสีทำงานอย่างไร ในกล้องดิจิทัลสีทั้งหมด (แม้แต่ตัวที่แพงมาก - ยกเว้นบางตัวที่ใช้ เทคโนโลยีขั้นสูงมาก บางอย่าง) คุณจะได้รับการวัดแชนเนลสีเพียงหนึ่งครั้งต่อตำแหน่งพิกเซล สิ่งนี้เรียกว่าการกรองแบบโมเสก (mosaic filtering) นี่คือแผนภาพที่ดีซึ่งช่วยอธิบายสิ่งนี้:

Mosaic

(แผนภาพเอื้อเฟื้อโดย Foveon, Inc.)

ดังนั้นสิ่งที่คุณเห็นคือ พิกเซลสามารถถูกมองว่าจัดเรียงเป็นกลุ่มละสี่ โดยที่มีการวัด G สองครั้งและการวัด R หนึ่งครั้งและ B หนึ่งครั้งต่อกลุ่ม หากคุณทิ้งการวัด G หนึ่งครั้ง (ซึ่งเราทำ) คุณจะเห็นว่าความละเอียดจริงของกล้อง 352x288 นั้นใกล้เคียงกับ 176x144 มากกว่า เราใช้งานกล้องในโหมดความละเอียดครึ่งซึ่งข้ามทุก ๆ บล็อก 2x2 ในแนวนอน ซึ่งให้ 88x144 เนื่องจากข้อจำกัดของหน่วยความจำในโปรเซสเซอร์ เราจึงทิ้ง 8 คอลัมน์ในแนวนอนและหนึ่งแถวในแนวตั้งที่มีรูปแบบทดสอบ ซึ่งให้ 80x143 เป็นความละเอียดสุดท้าย

เพื่อเป็นข้อมูล กล้องดิจิทัลมาตรฐานใช้เทคนิคการประมาณค่าที่ซับซ้อนเพื่อพยายามเติมค่าสีที่ขาดหายไปในแต่ละพิกเซลและให้สิ่งที่ใกล้เคียงกับความละเอียดเต็มของเซนเซอร์มากขึ้นเล็กน้อย

ฉันจะโฟกัส CMUcam1 ได้อย่างแม่นยำอย่างไร?#

แน่นอนว่าวิธีที่ดีที่สุดในการโฟกัสคือการดัมป์เฟรมโดยใช้ GUI คุณอาจไม่มีคอมพิวเตอร์อยู่ใกล้ๆ หรือคุณอาจกำลังใช้ BotBall CMUcam1 ซึ่งไม่มีความละเอียดเพียงพอที่อัตราบอด 9600 ที่ต่อสายตายตัวเพื่อให้สิ่งนี้ทำงานได้ดี

ในกรณีนั้น มีทางเลือกสองทาง อย่างแรก คุณสามารถลองนับเกลียวได้ เลนส์จะไม่ถูกขันเข้าจนสุดที่จุดโฟกัสสูงสุด แต่จะมีช่องว่างของเกลียวที่แสดงอยู่ประมาณ 1 มิลลิเมตร ในแง่ของจำนวนเกลียว นั่นคือประมาณ 2 เกลียวที่แสดงในช่องว่างระหว่างเลนส์และเมาท์เลนส์

ทางเลือกที่สองอาศัยแนวคิดว่าเมื่อภาพคมชัด ส่วนมืดจะมืดที่สุดและส่วนสว่างจะสว่างที่สุด กล่าวอีกนัยหนึ่งคือเมื่อคอนทราสต์มากที่สุด เมื่อภาพเบลอออกไป ค่าสุดขั้ว (extrema) ก็จะจางหายไปสู่การกระจายของความเข้มที่สม่ำเสมอมากขึ้น ดังนั้น หากคุณเริ่มโหมดสตรีมมิงโดยใช้ แล้วเรียก GM (Get Mean) คุณจะสามารถโฟกัสแบบเรียลไทม์ได้ ดูที่ค่าเบี่ยงเบนของสีแดง เมื่อคุณโฟกัสอย่างคมชัดบนวัตถุที่มีคอนทราสต์สูง (เช่นแผ่นกระดาษที่มีตัวหนังสือมากมาย) ที่ระยะที่ต้องการ จะมียอด (peak) ที่สังเกตได้ในค่าเบี่ยงเบนของสีแดงเมื่อโฟกัสคมชัดที่สุด สังเกตว่าแนวทางในการโฟกัสนี้ต้องการให้คุณวางกล้องและเป้าหมายให้มั่นคงพอสมควรขณะที่คุณหมุนเลนส์