CodeZine(コードジン)

特集ページ一覧

Advanced/W-ZERO3 [es]でカメラアプリを作ろう Part3

Windows Mobile用DirectShowフィルタの実装例

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/05/23 14:00

ダウンロード サンプルソース (23.7 KB)

Advanced/W-ZERO3 [es]に搭載されているカメラから取り込んだ画像を、モノトーン加工するWindows Mobile用DirectShowフィルタを実装します。

目次

はじめに

 Advanced/W-ZERO3 [es]にはカメラが内蔵されています。前回の記事では、内蔵カメラを使って静止画撮影を行うところまで作成しました。今回は、独自のDirectShowフィルタを作成することにより画像をモノトーン加工し、撮影できるようにしてみましょう。

完成図
完成図

これまでの記事

  1. Advanced/W-ZERO3[es]で簡易音声レコーダを作ろう
  2. Advanced/W-ZERO3[es]で簡易音声レコーダを作ろう Part 2
  3. Advanced/W-ZERO3[es]でカメラアプリを作ろう
  4. Advanced/W-ZERO3[es]でカメラアプリを作ろう Part2

対象読者

 以下のアプリケーションを開発したことがある人。

  1. C++言語を使ったアプリケーション
  2. Windows Mobile用アプリケーション
  3. COMを使ったアプリケーション

 本稿はこちらの記事の続きです。

 これまでの記事と重複する内容については割愛させて頂きました。WindowsMobile用DirectShowフィルタを作成したことの無い方はこちらの記事を先にお読みください。

モノトーン加工DirectShowフィルタの作成

フィルタの仕様

 それではフィルタを作成していきます。作成するフィルタの仕様を表1に示します。

表1. フィルタの仕様
フィルタの種類 トランスフォームフィルタ
フィルタの名前 Mono_Filter
入力ピンの数 1
出力ピンの数 1
入力ピン/出力ピンのメディアタイプ MEDIATYPE_Video
入力ピン/出力ピンのサブメディアタイプ MEDIASUBTYPE_RGB565
入力ピン/出力ピンのフォーマットタイプ FORMAT_VideoInfo

 「トランスフォームフィルタ」とは、入力データに対してなんらかの処理を行い、結果を出力するフィルタのことです。従って、入力ピンと出力ピン、2つのピンが存在します。今回作成するフィルタは、入力ピンから受け取った画像を加工し、出力ピンから送出するフィルタですのでトランスフォームフィルタとなります。なお、処理の負荷を軽減するために、取り扱う画像フォーマットはRGB565形式とします。

RGB565
 RGB565とは、R、G、Bがそれぞれ5、6、5ビットずつ、合計16ビットとなる画像フォーマットのことです。Gは他の要素と比較して最も明るいので1ビット多く割り当てられています。DirectShowではMEDIASUBTYPE_RGB565というサブメディアタイプで定義されています。
 

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

バックナンバー

連載:Advanced/W-ZERO3 [es]で作ろう
All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5