at_takuya.sasaki
2015年5月10日 14時07分
Armadillo-840にUSBカメラを接続し、LCDにUSBカメラの画像をQtで描画するサンプルは、以前以下のフォーラムでサンプルコードが提供されています。
[ QtでUVCカメラを表示させる ]
https://users.atmark-techno.com/forum/armadillo/1343
このサンプルでは yuyv_to_rgb.h というソースコード内で、USBカメラからのYUYVの画像データを、LCDに表示するために RBG形式に変換しています。
この変換処理は、ARM Cortex-A9のNEONを使うことで高速化することが可能で、すでに実装もされています。
(#ifdef __ARM_NEON__
で囲まれた箇所です)
[NEONについて]
http://www.arm.com/ja/products/processors/technologies/neon.php
ただし、サンプルをビルドしただけでは、NEONによる高速化が有効化されていません。 有効化するには、以下の手順を実施してみてください。
1) Qt Creator上で、animatedtiles.proを開いて末尾に以下の行を追加してください。
QMAKE_CXXFLAGS+=-march=armv7-a QMAKE_CXXFLAGS+=-mtune=cortex-a9 QMAKE_CXXFLAGS+=-mfpu=neon
2) Qt Creatorの[ビルド] - [qmake実行]を実行します。
3) その後、アプリケーションをリビルドすることで、NEONによる高速化したバイナリファイルが生成されます。
以上