SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Advanced/W-ZERO3 [es]で作ろう

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

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

  • X ポスト
  • このエントリーをはてなブックマークに追加

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

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

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 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というサブメディアタイプで定義されています。
 

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
フィルタの実装

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Advanced/W-ZERO3 [es]で作ろう連載記事一覧

もっと読む

この記事の著者

syu5()

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/2470 2008/09/17 01:01

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング