Skip to main content
พอร์ทัลครู

ความท้าทายด้านข้อมูลวิสัยทัศน์ - C++

ไอคอนกล่องเครื่องมือครู กล่องเครื่องมือสำหรับครู - วัตถุประสงค์ของความท้าทายด้านข้อมูลวิสัยทัศน์

วัตถุประสงค์ของ Vision Data Challenge คือเพื่อให้แน่ใจว่านักเรียนเข้าใจข้อมูลที่รวบรวมจากสแน็ปช็อตของ Vision Sensor และวิธีการคำนวณค่า X และ Y ตรงกลาง นักเรียนของคุณควรทำแล็บนี้ให้เสร็จโดยทำความเข้าใจว่าข้อมูลนั้นอาจตีความได้อย่างไร (เช่น ค่า X ตรงกลางสามารถใช้เพื่อกำหนดว่าวัตถุอยู่ที่ตำแหน่งใดเมื่อเทียบกับจุดศูนย์กลางของหุ่นยนต์) และแนวทางปฏิบัติที่ดีที่สุดในการตั้งชื่อวัตถุเมื่อกำหนดค่า

ภาพสแน็ปช็อตของเซ็นเซอร์วิชั่นจากการกำหนดค่าแสดงให้เห็นมือถือเกียร์สีเหลือง มีการซ้อนสี่เหลี่ยมทับบนเฟืองโดยมีข้อมูลดังต่อไปนี้แสดงไว้ด้านบน: กล่องสีเหลือง, X 90, Y 62, W 102, H 98

ทำแบบทดสอบ Vision Data Challenge ให้เสร็จโดยตอบคำถามและกรอกข้อมูลที่ขาดหายไปในสมุดบันทึกวิศวกรรมของคุณ

  1. คำแนะนำใดต่อไปนี้ที่ใช้ในการถ่ายภาพสแน็ปช็อตด้านบน?
    1. Vision5.takeSnapshot(Vision5__REDBOX);
    2. Vision5.takeSnapshot(Vision5__YELLOWBOX);
  2. กรอกค่าเหล่านี้:

    คำสั่งเซ็นเซอร์วิชั่นจะแสดงรายการอยู่ทางด้านซ้าย โดยมีช่องว่างเปล่าให้กรอกค่าต่างๆ จากบนลงล่างจะแสดงรายการบล็อกดังนี้: จำนวนวัตถุ > 0, จำนวนวัตถุ, วัตถุ 0 อยู่กึ่งกลาง x, วัตถุ 0 อยู่กึ่งกลาง y, ความกว้างของวัตถุ 0 และความสูงของวัตถุ 0

  3. YELLOWBOX อยู่ทางซ้ายหรือทางขวาของจุดศูนย์กลางของหุ่นยนต์?
  4. YELLOWBOX อยู่เหนือหรือใต้จุดศูนย์กลางของหุ่นยนต์?
  5. YELLOWBOX คือ ไม่ใช่ เป็นชื่อที่ดีที่สุดที่จะใช้กับวัตถุนี้ หากคุณต้องการจดจำได้ง่ายว่าลายเซ็นสีไหนเป็นสีไหน ชื่อไหนดีกว่ากัน? ทำไม
    1. เกียร์สีเหลือง
    2. เยลโล่คิวบ์

ไอคอนกล่องเครื่องมือครู กล่องเครื่องมือสำหรับครู - คำตอบ

คุณสามารถนำคำตอบของนักเรียนมาอภิปรายกันทั้งชั้นเรียน และ/หรือตรวจสอบสมุดบันทึกวิศวกรรมของนักเรียนเพื่อให้แน่ใจว่าพวกเขาทำกิจกรรมสำเร็จ

  1. Vision5.takeSnapshot(Vision5__YELLOWBOX);
  2. ข้อมูลที่จัดเรียงตามคำสั่ง VEXcode เสร็จสมบูรณ์แล้ว คำตอบที่อ่านตามลำดับ วัตถุจำนวน > 0 = จริง; วัตถุจำนวน = 1; วัตถุ 0 ศูนย์กลาง x = 141; วัตถุ 0 ศูนย์กลาง y = 111; วัตถุ 0 ความกว้าง = 102; วัตถุ 0 ความสูง = 98
  3. กล่องสีเหลืองอยู่ทางด้านซ้ายของจุดกึ่งกลางของหุ่นยนต์เล็กน้อย แต่ต่างกันเพียง 16.5 พิกเซลเท่านั้น (กึ่งกลาง 157.5 - 141)
  4. YELLOWBOX ต่ำกว่าจุดศูนย์กลางของหุ่นยนต์เล็กน้อย แต่ต่างกันเพียง 5.5 พิกเซลเท่านั้น (111 - ศูนย์กลาง 105.5)
  5. ก. เกียร์สีเหลือง

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

ไอคอนขยายการเรียนรู้ของคุณ ขยายการเรียนรู้ของคุณ - ใช้คำแนะนำการตรวจจับภายในโครงการ

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

void has RedCallback() {

	Brain.Screen.setFont(mono40);
	Brain.Screen.clearLine(3);
	Brain.Screen.setCursor(3, 1);
	Vision5.takeSnapshot(Vision5__REDBOX);
  
	if (Vision5.objectCount > 0) {
	  Brain.Screen.print("Red Object Found");
	  Brain.Screen.newLine();
	  Brain.Screen.print(Vision5.objectCount);
	  Brain.Screen.newLine();
	  Brain.Screen.print(Vision5.objects[0].centerX);
	  Brain.Screen.print(Vision5.objects[0].centerY);
	  Brain.Screen.print(Vision5.objects[0].width);
	  Brain.Screen.print(Vision5.objects[0].height);
  
	} else {
	  Brain.Screen.print("No Red Object");
	}
  }

นักเรียนที่มีทักษะขั้นสูงอาจใช้คำแนะนำเหล่านี้ภายในโครงการเพื่อการตัดสินใจ

Drivetrain.drive(forward);
	Vision5.takeSnapshot(Vision5__REDBOX);
	
	if (Vision5.objectCount > 1 && Vision5.objects[0].centerX > 157.5) {
	  Drivetrain.turnFor(left, 90, degrees);
	} else {
	  Drivetrain.turnFor(right, 90, degrees);
	}