v1.4.0#
v1.4.0 แนะนำเครื่องมือ Machine Vision ใหม่สองชิ้น ได้แก่ Threshold Editor และ Keypoints Editor พร้อมกับการจัดระเบียบสคริปต์ตัวอย่างที่รวมมาและ OpenMV เฟิร์มแวร์ 2.1.0 ที่รวมมาอย่างมีนัยสำคัญ ยังคงใช้ฐาน Qt Creator 4.0.2 รุ่นนี้เปลี่ยน keyboard shortcut หลายตัวและเปลี่ยนชื่อหรือลบสคริปต์ตัวอย่างบางส่วน ดู Breaking changes
Highlights#
Threshold Editor เพิ่มใน
Tools > Machine Vision: โหลดภาพจากบัฟเฟอร์เฟรมหรือไฟล์ แสดงตัวอย่าง binary แบบสดพร้อม slider min/max ระดับสีเทาหรือ LAB ที่ปรับได้บวกกับ invert และแสดงผล threshold tuple สำหรับใช้ในสคริปต์Keypoints Editor เพิ่มใน
Tools > Machine Vision: แสดง keypoints ORB/LBP บนภาพต้นฉบับและให้คุณเลือกและลบ keypoints ที่ผิดปกติ เปลี่ยน octave และแก้ไขหรือรวมไฟล์ keypointตัวอย่างที่จัดระเบียบใหม่: ตัวอย่าง Board-Control Arduino I2C/SPI slave ใหม่ ตัวอย่าง ORB keypoints ใหม่ ตัวอย่างการแก้ไขเลนส์ QR-code และชุด Color-Tracking ที่เขียนใหม่
OpenMV firmware ที่รวมมาอัปเดตเป็น 2.1.0 โดยเปลี่ยน board target STM32F7 จาก OMV7 เป็น OMV3
Keyboard shortcuts เพิ่ม:
Ctrl+Eสำหรับ Connect/Disconnect และCtrl+Rสำหรับ Stop (ย้ายจากCtrl+T)
New features#
Threshold Editor (
Tools > Machine Vision) โหลดภาพจากบัฟเฟอร์เฟรมหรือไฟล์และแสดงตัวอย่าง binary แบบสดพร้อม slider min/max ระดับสีเทาหรือ LAB ที่ปรับได้บวกกับ invert โดยแสดงผล threshold tuple สำหรับใช้ในสคริปต์ (fd100a5c3)Keypoints Editor (
Tools > Machine Vision) แสดง keypoints ORB/LBP บนภาพต้นฉบับ ให้คุณเลือกและลบ keypoints ที่ผิดปกติด้วยเมาส์และปุ่ม Delete เปลี่ยน octave ผ่าน slider และแก้ไขหรือรวมไฟล์ keypoint (4549227fc, f6ee10595, 0e046f51a)หลังการตรวจสอบว่าเฟิร์มแวร์เป็นปัจจุบัน IDE จะเสนอให้ reset OpenMV Cam กลับไปใช้เฟิร์มแวร์รุ่นที่รวมมา โดยมีตัวเลือกลบ internal filesystem (e7803d33c)
สคริปต์ตัวอย่างจัดระเบียบใหม่: ตัวอย่าง Board-Control Arduino I2C/SPI slave ใหม่ ตัวอย่าง ORB keypoints ใหม่ (
keypoints.py/keypoints_save.py) แทนfreak.pyตัวอย่างการแก้ไขเลนส์/ซูม QR-code และชุด Color-Tracking ที่เขียนใหม่ (การติดตามสีระดับสีเทา/RGB565 อัตโนมัติ การติดตาม IR-beacon การติดตาม blob สีเดียว/หลายสี และ color-code ข้อมูลฮิสโตแกรม/สถิติภาพ การติดตามเส้น) (e7803d33c)
Other changes and improvements#
ขณะนี้ Keypoints Editor สำรองไฟล์ keypoint และภาพต้นฉบับ (
.bak) ก่อนเขียนทับเมื่อบันทึก (fd100a5c3)Connect และ Disconnect ขณะนี้ผูกกับ
Ctrl+Eและ Stop (หยุดสคริปต์) ย้ายจากCtrl+Tเป็นCtrl+R(e7803d33c)endpoint เครือข่าย IDE ถูกเปลี่ยนไปใช้ host openmv.io ใหม่: forums เป็น
forums.openmv.ioและหน้า download เป็นopenmv.io/pages/download(e7803d33c) และการดาวน์โหลด version-check, resources-version และ resources-zip เป็นupload.openmv.io(e899abcca)
Bug fixes#
การแฟลชเฟิร์มแวร์ผ่าน DFU (
DfuSeCommandบน Windows,pydfuบนแพลตฟอร์มอื่น) ขณะนี้ลองใหม่ได้สูงสุด 10 ครั้งแทนที่จะล้มเหลวในครั้งแรก ทำให้การอัปเดต bootloader/DFU มีความน่าเชื่อถือมากขึ้น (e7803d33c)การบันทึกสคริปต์ untitled/ใหม่ขณะนี้เปิด Save As อย่างถูกต้อง และหลังบันทึก display name ของ editor จะถูกล้างเพื่อไม่ให้ชื่อแท็บเก็บชื่อ placeholder ชั่วคราว
_$ไว้ (e7803d33c)เพิ่มการตรวจสอบ sanity ที่ปฏิเสธหมายเลขเวอร์ชันเฟิร์มแวร์ที่ไม่สมเหตุสมผล (นอกช่วง 0..100) และเชื่อมต่อใหม่แทนที่จะดำเนินการต่อ (2320ab299)
แก้ไข drive-association prompt เพื่อให้การเชื่อมต่อใหม่แบบ silent เลือก drive แรกโดยอัตโนมัติแทนที่จะระงับการเลือกอย่างผิดพลาด (4fda9a7d6, e7803d33c)
แก้ไขการแสดงผลภาพบัฟเฟอร์เฟรมแบบ binary (1bpp) โดย align แต่ละแถวเป็น 32 บิตแทน 8 บิต เพื่อให้ภาพ binary ที่สตรีมจาก OpenMV Cam แสดงผลถูกต้องแทนที่จะมีแถวที่เสียหาย/เยื้องผิดตำแหน่ง (e7803d33c)
Platform and tool support#
Qt Creator base: 4.0.2.
Bundled OpenMV firmware: อัปเดตจาก 2.0.0 เป็น 2.1.0 (f6ee10595)
STM32F7 board target: เปลี่ยนจาก OMV7 (STM32F769) เป็น OMV3 (STM32F765/512) พร้อมไบนารี bootloader/firmware ใหม่สำหรับทั้ง OMV2 และ OMV3 (f6ee10595)
Linux udev rules: กฎ OpenMV Cam และ DFU device ขณะนี้ตั้ง
MTP_NO_PROBE=1เพื่อหยุดไม่ให้ desktop ตรวจสอบ device ว่าเป็น MTP device (e7803d33c)
Breaking changes#
การเปลี่ยนแปลง workflow ที่ผู้ใช้มองเห็นได้ระหว่าง v1.3.x และ v1.4.0:
Keyboard shortcuts เปลี่ยน: Stop (หยุดสคริปต์) ย้ายจาก
Ctrl+Tเป็นCtrl+Rและ Connect/Disconnect ขณะนี้ผูกกับCtrl+Eสคริปต์ตัวอย่างเปลี่ยนชื่อ/ลบออก: ตัวอย่าง Color-Tracking หลายรายการถูกเปลี่ยนชื่อหรือลบออก (เช่น
blob_detection.py,marker_tracking.py) และตัวอย่าง Feature-Detectionfreak.pyถูกลบออกและแทนที่ด้วยkeypoints.py