v1.4.0

v1.4.0은 두 가지 새로운 머신 비전 도구인 Threshold EditorKeypoints Editor를 도입하며, 이와 함께 번들 예제 스크립트의 대대적인 재구성과 OpenMV 펌웨어 2.1.0 번들을 제공합니다. Qt Creator 4.0.2 기반을 유지합니다. 이 릴리스는 여러 키보드 단축키를 변경하고 일부 예제 스크립트의 이름을 변경하거나 제거합니다. 호환성 변경 사항을 참고하세요.

주요 내용

  • Tools > Machine VisionThreshold Editor가 추가되었습니다. 프레임 버퍼나 파일에서 이미지를 불러와, 조정 가능한 그레이스케일 또는 LAB 최소/최대 슬라이더와 반전 기능을 갖춘 실시간 이진 미리보기를 보여주고, 스크립트에서 사용할 수 있는 임계값 튜플을 출력합니다.

  • Tools > Machine VisionKeypoints Editor가 추가되었습니다. 소스 이미지 위에 ORB/LBP 키포인트를 시각적으로 표시하고, 이상치 키포인트를 선택 및 삭제하거나, octave를 전환하거나, 키포인트 파일을 편집 및 병합할 수 있습니다.

  • 예제 재구성: 새로운 보드 제어 Arduino I2C/SPI 슬레이브 예제, 새로운 ORB 키포인트 예제, QR 코드 렌즈 보정 예제, 그리고 새로 작성된 색상 추적 모음이 추가되었습니다.

  • 번들 OpenMV 펌웨어가 2.1.0으로 업데이트되었으며, STM32F7 보드 타겟이 OMV7에서 OMV3으로 변경되었습니다.

  • 키보드 단축키가 추가되었습니다. 연결/연결 해제는 Ctrl+E, 중지는 Ctrl+R(Ctrl+T에서 이동)입니다.

새로운 기능

  • Threshold Editor(Tools > Machine Vision)는 프레임 버퍼나 파일에서 이미지를 불러와 조정 가능한 Grayscale 또는 LAB 최소/최대 슬라이더와 반전 기능으로 실시간 이진 미리보기를 보여주며, 스크립트에서 사용할 임계값 튜플을 출력합니다 (fd100a5c3).

  • Keypoints Editor(Tools > Machine Vision)는 소스 이미지 위에 ORB/LBP 키포인트를 시각적으로 표시하며, 마우스와 Delete 키로 이상치 키포인트를 선택하고 삭제할 수 있고, 슬라이더로 옥타브를 전환하며, 키포인트 파일을 편집하거나 병합할 수 있습니다 (4549227fc, f6ee10595, 0e046f51a).

  • 펌웨어 최신 여부 확인 후, 이제 IDE가 OpenMV Cam을 번들 릴리스 펌웨어로 재설정하고 선택적으로 내부 파일 시스템을 삭제하는 옵션을 제공합니다 (e7803d33c).

  • 예제 스크립트 재구성: 새로운 보드 제어 Arduino I2C/SPI 슬레이브 예제, freak.py를 대체하는 새로운 ORB 키포인트 예제(keypoints.py/keypoints_save.py), QR 코드 렌즈 보정/줌 예제, 그리고 새로 작성된 색상 추적 모음(자동 그레이스케일/RGB565 색상 추적, IR 비콘 추적, 단일/다중 색상 블롭 및 컬러 코드 추적, 이미지 히스토그램/통계 정보, 라인 추종)이 추가되었습니다 (e7803d33c).

기타 변경 사항 및 개선 사항

  • 이제 Keypoints Editor가 저장 시 덮어쓰기 전에 원본 키포인트 및 이미지 파일을 백업합니다(.bak) (fd100a5c3).

  • 이제 연결과 연결 해제가 Ctrl+E에 바인딩되었고, 중지(스크립트 정지)가 Ctrl+T에서 Ctrl+R로 이동되었습니다 (e7803d33c).

  • IDE 네트워크 엔드포인트가 새로운 openmv.io 호스트로 다시 지정되었습니다. 포럼은 forums.openmv.io로, 다운로드 페이지는 openmv.io/pages/download로 (e7803d33c), 그리고 버전 확인, 리소스 버전, 리소스 zip 다운로드는 upload.openmv.io로 변경되었습니다 (e899abcca).

버그 수정

  • DFU를 통한 펌웨어 플래시(Windows에서는 DfuSeCommand, 다른 플랫폼에서는 pydfu)가 이제 첫 시도에서 실패하는 대신 최대 10번까지 재시도하여, 부트로더/DFU 업데이트가 더욱 안정적입니다 (e7803d33c).

  • 제목 없는/새 스크립트를 저장하면 이제 다른 이름으로 저장이 올바르게 열리며, 저장 후에는 편집기의 표시 이름이 지워져 제목이 더 이상 임시 _$ 자리 표시자 이름을 유지하지 않습니다 (e7803d33c).

  • 타당하지 않은 펌웨어 버전 번호(0..100 범위 밖)를 거부하고 진행하는 대신 재연결하는 정합성 검사를 추가했습니다 (2320ab299).

  • 드라이브 연결 프롬프트를 수정하여, 자동 재연결 시 선택을 잘못 억제하는 대신 첫 번째 드라이브를 자동으로 선택하도록 했습니다 (4fda9a7d6, e7803d33c).

  • 각 행을 8비트가 아닌 32비트에 정렬함으로써 이진(1bpp) 프레임 버퍼 이미지의 렌더링을 수정하여, OpenMV Cam에서 스트리밍되는 이진 이미지가 깨지거나 잘못 정렬된 행이 아니라 올바르게 표시되도록 했습니다 (e7803d33c).

플랫폼 및 도구 지원

  • Qt Creator 기반: 4.0.2.

  • 번들 OpenMV 펌웨어: 2.0.0에서 2.1.0으로 업데이트되었습니다 (f6ee10595).

  • STM32F7 보드 타겟: OMV7(STM32F769)에서 OMV3(STM32F765/512)으로 변경되었으며, OMV2와 OMV3 모두에 대한 새로운 부트로더/펌웨어 바이너리가 제공됩니다 (f6ee10595).

  • Linux udev 규칙: 이제 OpenMV Cam 및 DFU 장치 규칙이 MTP_NO_PROBE=1을 설정하여 데스크톱이 장치를 MTP 장치로 탐지하지 못하도록 합니다 (e7803d33c).

호환성 변경 사항

v1.3.x와 v1.4.0 사이의 사용자에게 보이는 워크플로 변경 사항:

  • 키보드 단축키 변경: 중지(스크립트 정지)가 Ctrl+T에서 Ctrl+R로 이동되었고, 연결/연결 해제가 이제 Ctrl+E에 바인딩됩니다.

  • 예제 스크립트 이름 변경/제거: 여러 색상 추적 예제의 이름이 변경되거나 제거되었으며(예: blob_detection.py, marker_tracking.py), Feature-Detection의 freak.py 예제가 제거되고 keypoints.py로 대체되었습니다.