よくある質問

まずは本書全体に目を通してください。以下の内容は本書の中で参照できます。

OpenMV3 M7、OpenMV4 H7、OpenMV4 H7 Plus、OpenMV RT1062 のどれを選ぶべきか?

より高性能で高解像度、機能も豊富な最新バージョンの OpenMV4 H7 Plus または OpenMV RT1062 をお勧めします。

OpenMV3 M7、OpenMV4 H7、OpenMV4 H7 Plus、OpenMV RT1062 の違いは何ですか?

  • 周辺機能(ペリフェラル)が異なります。詳細は pyb の各種ペリフェラルを参照してください。
項目 OpenMV2 M4 OpenMV3 M7 OpenMV4 H7 OpenMV4 H7 Plus OpenMV RT1062
ピン数 9 10 10 10 14
ADC 1 1 1 1 1
DAC 1 1 1 1 0
SPI 1 1 1 1 1
I2C 1 2 2 2 1
UART 1 2 2 2 1
Servo 2 3 3 2 4
CAN bus 0 1 1 1 1
電源ボタン 0 0 0 0 1
カスタムボタン 0 0 0 0 1
ピン耐圧 5V 5V 5V 5V 3.3V
ピンレベル 3.3V 3.3V 3.3V 3.3V 3.3V
IC STM32F427 STM32F765 STM32H743 STM32H743 IMXRT1062
RAM 256KB 512KB 1MB 32MB + 1MB 32MB + 1MB
Flash 1MB 2MB 2MB 32MB + 2MB 16MB
動作周波数 180MHz 216MHZ 480MHZ 480MHZ 600MHZ
標準センサー(感光素子) OV7725(30万画素) OV7725(30万画素) OV7725(30万画素) OV5640(500万画素) OV5640(500万画素)

ポイント: アルゴリズムとして、OpenMV2 は AprilTag を使用できませんが、OpenMV3 以降は使用できます。バージョンが上がるほど使用できる機能も増えます。\ 最大サポート解像度: OpenMV2 は 320x240、OpenMV3 は 640x480、OpenMV4 は 752x480 (MT9V034 グローバルシャッターモジュール使用時)、OpenMV4 Plus または OpenMV RT1062 は 2592x1944 です。

OpenMV はオープンソースですか?

はい、完全にオープンソースです。github: https://github.com/openmv/openmv

実行中にエラーが発生した場合はどうすればよいですか?

まず、IDE とファームウェアを最新バージョンにアップグレードしてください。

よくあるエラーのヒント を参照してください\ よくある不具合 を参照してください

ファームウェアのバージョンを確認する方法

OpenMV を接続したら、下図の矢印部分を確認してください。

ファームウェアのアップグレード方法

ファームウェアのアップグレード を参照してください

ターミナルを開く方法・printの内容を確認する方法

10分クイックスタート を参照してください

OpenMV と OpenCV の違いは何ですか?

OpenMV は画像処理アルゴリズムを組み込んだハードウェアプロジェクトであり、専用ハードウェアを使用します(オープンソース)。

OpenCV は汎用のソフトウェアプロジェクトであり、OS のサポートを必要とします。組み込み環境で動作させるには、多くのコードを移植・削減する必要があります。

OpenMV のアルゴリズムは OpenCV から移植したものですか?

いいえ。OpenCV はパソコン向けに設計されており組み込み用途には適さないため、アルゴリズムはすべて書き直されています。

Raspberry Pi と比較した OpenMV の利点は何ですか?

  • 消費電力: OpenMV はアルゴリズム実行時でも 100mA~140mA 程度しか消費せず、USB 給電が可能です。Raspberry Pi は 700mA 必要で、USB 給電はできません。

  • 開発が容易: OpenMV の開発は Arduino に似ており、10分もあれば動かせます。Raspberry Pi は OpenCV や NumPy などのソフトウェアをインストールする必要があり、専用の IDE もありません。

  • フレームレート(FPS)

もちろん、性能面では劣る部分もあります。

OpenMV はどのようなプログラミング言語を使用しますか?

Python、正確には MicroPython を使用します。参照: Python の背景知識

OpenMV は C言語でプログラミングできますか? IAR や Keil は使用できますか

C言語を使用することもできますが、必須ではありません。Python には多くの利点があります。基盤となるアルゴリズムを実装したい場合は、アルゴリズムをソースコードに追加する を参照してください。

OpenMV は MicroPython プロジェクトをベースにしているため、IAR や Keil を使用してプログラミングすることはできません。IAR や Keil を使用するということは OpenMV プロジェクトを放棄することに等しく、一から作り直すことになります。

OpenMV のファームウェアをコンパイルするにはどうすればよいですか?

参照: ファームウェアのコンパイル

Ubuntu 上の GCC を使用します。

OpenMV のファームウェアは Windows/IAR/Keil でコンパイルできますか?

いいえ。Ubuntu と GCC を使用してください。Windows での作業は推奨していません。

OpenMV は MicroPython を使うと動作が遅くなりますか?

確かに C言語を直接使用するよりは多少遅くなりますが、大幅に遅くなるわけではありません。

  • コアとなるアルゴリズムは C言語で書かれています
  • 初回実行時に、スクリプトは MicroPython によって自動的にバイトコードにコンパイルされます(パソコンの場合と同様です)

OpenMV はコードをオフラインで実行できますか?

はい、可能です。参照: 10分間チュートリアル

OpenMV の開発は難しいですか?

Arduino で LED を点灯させる程度の難易度であり、それほど難しくはありません。最初の Hello World は10分もかかりません。

小さなボールをトラッキングしたい場合も、サンプルコードを実行するだけで5分もかかりません。

Python は難しいですか?

Python は最も習得しやすい言語のひとつとして評価されています。

ロジックがうまく書けない場合はどうすればよいですか? (たとえば2つの関数を組み合わせて書けない場合)

このような場合、プログラミング経験がないことが多いです。お勧めは\ Learn Python the Hard Way

選択肢は2つあります。

  • 自分では学ばずに、お金を払って他の人に開発してもらう。
  • プログラミングの知識を身につける(Python だけに限りません)
    • まずは Learn Python the Hard Way に目を通す。
    • より多くのサンプルを学び、さまざまなモジュールの使い方を理解する。
    • 自分に必要なロジックを整理する。

NumPy や PIL のようなライブラリは使用できますか?

いいえ。これらのライブラリは CPython 用であるため、MicroPython では使用できません。

OpenMV はニューラルネットワーク(NN)/ディープラーニングを実行できますか?

はい。現在、OpenMV4/OpenMV4 Plus/OpenMV RT では、TensorFlow Lite による人物検出、cifar10、lenet 数字認識、STM32CubeAI など、さまざまなニューラルネットワークモデルをサポートしています。今後もさらに対応が拡充される予定です。

オンライントレーニングサイトの ai.singtown.comwww.edgeimpulse.com を利用すれば、分類や物体検出用の独自のニューラルネットワークモデルをトレーニングし、識別したい任意の対象を分類・検出できます。

OpenMV の解像度はどれくらいですか?

OpenMV2 M4 / OpenMV3 M7 / OpenMV4 H7: 30万画素、OV7725 / MT9M114 センサーを使用しています。\ プログラムでよく使用される解像度:

  • QQVGA: 160x120
  • QVGA: 320x240

最大サポート:

  • VGA: 640x480

注記: VGA のカラー(多色)モードは圧縮フォーマットのため、画像処理アルゴリズムには対応していません。

OpenMV4 Plus / OpenMV RT1062 には OV5640 モジュールが標準搭載されており、最大500万画素をサポートします。

OpenMV は高解像度を使用できますか?

最新の OpenMV4 H7 Plus と OpenMV RT1062 では可能です。

OpenMV4 Plus / OpenMV RT1062 には OV5640 モジュールが標準搭載されており、最大500万画素をサポートします。

さらに、OpenMV4 Plus は外部32MB SDRAMと32MB QSPI Flashを、OpenMV RT1062は外部32MB SDRAMと16MB Flashを搭載しており、より高い性能を発揮します。

それ以外のバージョンでは対応していません。

  • センサーの制約
  • OpenMV の処理速度の制約
  • OpenMV のメモリ不足(OpenMV3 はわずか512KB、OpenMV4 H7 も1MBしかありません)

OpenMV カメラのセンサーは交換できますか?

OpenMV RT、OpenMV4 H7 Plus、OpenMV4 H7 はセンサーの交換が可能です。標準センサーに加え、MT9V034 グローバルシャッターモジュールや Lepton 赤外線サーマルイメージングモジュールにも対応しています。

OpenMV3 M7 / OpenMV2 M4 は交換できません。

  • 他のセンサー用のドライバが存在しない
  • センサーは BGA パッケージで基板に実装されており、交換できない
  • OpenMV2/3 では、より高画素のセンサーを使用できない

OpenMV はデュアルカメラを使用できますか?

いいえ、使用できません。

OpenMV は外部カメラ(USBカメラなど)を使用できますか?

いいえ、使用できません。

OpenMV のフレームレート(FPS)はどれくらいですか?

サイズ グレースケール/RGB565 WiFi映像転送 IDE映像転送 FPS
QQVGA グレースケール いいえ いいえ 85
QQVGA グレースケール いいえ はい 85
QQVGA グレースケール はい いいえ 42
QQVGA グレースケール はい はい 30
QQVGA カラー いいえ いいえ 85
QQVGA カラー いいえ はい 58
QQVGA カラー はい いいえ 35
QQVGA カラー はい はい 21
QVGA グレースケール いいえ いいえ 85
QVGA グレースケール いいえ はい 65
QVGA グレースケール はい いいえ 21
QVGA グレースケール はい はい 17
QVGA カラー いいえ いいえ 85
QVGA カラー いいえ はい 50
QVGA カラー はい いいえ 21
QVGA カラー はい はい 13

OpenMV の認識距離はどれくらいですか?

標準レンズの場合:

卓球ボール程度の大きさの物体: 0.5m~1m。

顔検出: 1m

参照: 画像処理の背景知識

OpenMV のレンズは交換できますか?

はい、標準の M12 サイズのレンズです。

レンズの違いは何ですか?

参照: 画像処理の背景知識

望遠レンズではどこまで見えますか?

卓球ボール程度の大きさの物体: 3m。

参照: 画像処理の背景知識

OpenMV にはどのようなアルゴリズムがありますか?

  • カラートラッキング
  • QRコード検出
  • 顔トラッキング
  • ライン検出
  • テンプレートマッチング
  • 特徴点検出
  • 目の検出
  • HAAR、LBP、HOG
  • 画像の保存
  • 動画の録画
  • エッジ検出
  • 虹彩検出
  • ライン検出
  • オプティカルフロー
  • 顔検出
  • AprilTag

参照: OpenMV の画像処理方法

各種アルゴリズムのドキュメントについては、image processing を参照してください。

OpenMV は数字を検出できますか?

TensorFlow による画像分類。参照: TensorFlow 画像分類

テンプレートマッチング。参照: テンプレートマッチング

OpenMV は文字を検出できますか?

テンプレートマッチング。参照: テンプレートマッチング

OpenMV は漢字を検出できますか?

テンプレートマッチング。参照: テンプレートマッチング

OpenMV は形状を検出できますか?

円の認識。参照: 円の認識

矩形の認識。参照: 矩形の認識

テンプレートマッチング。参照: テンプレートマッチング

OpenMV は顔を検出できますか?

はい、可能です。

OpenMV は QRコードを検出できますか?

はい。参照: コード認識

OpenMV はレーザースポットを検出できますか?

はい。カラー検出(色の検出)により可能です。

OpenMV は他のチップと通信できますか?

はい、可能です。\ シリアル通信(上)\ シリアル通信(下)

OpenMV は Arduino/51/STM32 と通信できますか?

はい、可能です。\ シリアル通信(上)\ シリアル通信(下)

OpenMV は PLC とどのように通信すればよいですか?

RS232 や RS485 は PLC のシリアルポートです。TTL-RS232 または TTL-RS485 変換モジュールを1つ使用すれば通信できます。\ シリアル通信(上)\ シリアル通信(下)

OpenMV はパソコンと通信できますか?

はい、可能です。\ シリアルポートまたは USB を使用して通信します。

USB: USB-VCP クラス/ドキュメント

OpenMV はステッピングモーター/DCモーター/サーボを駆動できますか?

はい。参照: 各種モーター

OpenMV はサーボを何個駆動できますか?

OpenMV2 は2個、OpenMV3 は3個、OpenMV4 H7 は3個、OpenMV4 H7 Plus は2個、OpenMV RT1062 は4個です。\ PCA9685 を使用すれば16チャンネル以上に拡張できます。

参照: 各種モーター

OpenMV は自動操縦(オートパイロット)に使用できますか?

はい、シリアル通信を使用すれば可能です。さらに、\ OpenMV は MavLink プロトコルに対応しています。

OpenMV への電源供給方法は?

以下のいずれかを選択してください。同時に給電することも可能です。

  • USB から直接給電する
  • Vin-GND 間に 3.7V~5V の電圧を接続する(5V 推奨)

OpenMV の 3.3V ピンは何のためのものですか?

3.3V 電圧の出力端子であり、他のモジュールに電源を供給できます。

OpenMV はリチウム電池で給電できますか?

はい。リチウム電池は通常3.7Vです。

OpenMV の動作電圧はいくつですか?

3.3V です。

ただし、STM32 をメインコントローラとする OpenMV2 M4/OpenMV3 M7/OpenMV4 H7/OpenMV4 H7 Plus は5V耐性があります(5V入力があってもチップは「1」と認識して正常に動作しますが、出力は常に3.3Vです)。

メインコントローラが IMXRT の OpenMV RT は 3.3V 耐性です(IO 入力は3.3Vを超えることはできません)。

OpenMV はコード実行時になぜ熱くなるのですか?

50℃程度であれば正常です。

LCD は何本のピンを使用しますか?

P0, P2, P3, P6, P7, P8

参照: OpenMV拡張パーツ

LCD は SPI を使用しますか?

はい

LCD の解像度はどれくらいですか?

sensor.QQVGA2: 128x160

画像を無線で転送できますか?

はい、可能です。

OpenMV2 M4/OpenMV3 M7/OpenMV4 H7/OpenMV4 H7 Plus は WiFi 拡張ボードを使用します。

OpenMV RT には WiFi が内蔵されています。

参照: OpenMV拡張パーツ

OpenMV の SDカードは何に使えますか?

画像や動画の保存に使用できます。

OpenMV がサポートする SDカードの最大容量は?

32G

results matching ""

    No results matching ""