v4.5.5¶
v4.5.5 เป็นรุ่นบำรุงรักษาขนาดเล็กที่มุ่งเน้นที่ความสอดคล้องของแคช image-buffer, ความน่าเชื่อถือในการรีเซ็ตเซนเซอร์ และการจัดระเบียบ morphology API
Highlights¶
การจับภาพที่น่าเชื่อถือยิ่งขึ้น — บัฟเฟอร์วิดีโอตอนนี้ถูก cache-invalidated ก่อนใช้งาน และเพิ่มความล่าช้าหลังการรีเซ็ต/ปิดเซนเซอร์
Breaking:
ksizeของmorph()ตอนนี้เป็น positional และเมธอด pooling ที่ล้าสมัยถูกลบออก (ดูการเปลี่ยนแปลง breaking)
Other changes and improvements¶
เพิ่มความล่าช้าหลังการรีเซ็ตเซนเซอร์/ปิดเครื่องเพื่อการเริ่มต้นกล้องที่น่าเชื่อถือยิ่งขึ้น (Portenta H7 ใช้ค่า override สำหรับความล่าช้าเหล่านี้สำหรับเซนเซอร์ของตัวเอง)
Bug fixes¶
แก้ไขการตรวจสอบ mask ของ
erode()บัฟเฟอร์วิดีโอตอนนี้ถูก cache-invalidated ก่อนส่งคืน เพื่อป้องกันข้อมูลภาพที่ล้าสมัย/เสียหาย
i.MX RT: การถ่ายโอนกล้องจะลองใหม่หาก DMA ยังไม่ว่าง; STM32: สถานะบัฟเฟอร์วิดีโอถูกรีเซ็ตเมื่อเฟรมถูกทิ้ง
Breaking API changes¶
การเปลี่ยน API ที่มองเห็นได้ระหว่าง v4.5.4 และ v4.5.5
การเปลี่ยนแปลงแต่ละรายการถูกติดแท็กตามผลกระทบ:
minor — API แคบ; ส่งผลกระทบเฉพาะสคริปต์ที่ใช้มัน
behavior — API เดิม, ผลลัพธ์ต่างออกไป; ตรวจสอบสคริปต์ที่ปรับแต่งแล้วอีกครั้ง
การเปลี่ยนแปลงจัดกลุ่มตามผลกระทบตามลำดับนั้น แฮชของ commit แต่ละรายการลิงก์ไปยัง diff บน GitHub
morph() ksize positional; pooling ถูกลบออก (minor)¶
อาร์กิวเมนต์ขนาดเคอร์เนล ksize ของ morph() ตอนนี้เป็น positional argument ตระกูลเมธอด pooling Image.pool() ที่ล้าสมัยถูกลบออก
การแยกวิเคราะห์อาร์กิวเมนต์การแปลงภาพที่เป็นมาตรฐาน (behavior)¶
เมธอดการแปลงภาพ (Image.to_*() / to()) ถูกย้ายไปใช้ argument parser mp_arg_parse_all ที่เป็นมาตรฐาน การเรียกที่พึ่งพาลำดับ positional/keyword เดิมอาจต้องปรับ
Commit: 3fee02ffb
Migration checklist¶
สำหรับการพอร์ตที่สะอาดไปยัง v4.5.5: ส่ง ksize ของ morph() แบบ positional, ลบการใช้งานเมธอด pooling ที่ถูกลบออก (การเปลี่ยนแปลง morphology) และตรวจสอบลำดับอาร์กิวเมนต์ในการเรียกการแปลงภาพอีกครั้ง (การเปลี่ยนแปลง conversion-parsing)