画像処理ソリューション
これを見れば画像処理の入門から基礎~応用まで全てがわかるのを目指して!
   
翻訳(Translate)

プロフィール

Akira

ニックネーム:Akira
東京都の町田事業所に勤務
画像処理ソフトの開発を行っています。リンクフリーです!
詳細プロフィールは こちら
お問い合わせは、こちら↓

【補助HP】
画像処理ソリューションWeb版 【Newブログ】
イメージングソリューション

スポンサーリンク


カテゴリ

最近のコメント

カレンダー

03 | 2009/04 | 05
S M T W T F S
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -

趣味のブログ

iPhone萬歳!
iPhoneの情報いろいろ。
ブログ学習帳
ブログ、SEO、アフィリエイト情報など(まだまだこれから)
俺流クラフト日記
ハンドメイド作品の記録(現在、放置中)

スポンサーリンク 最近の記事
(09/18)  計測測定展に光切断のデモを出展しました
(08/17)  ディジタル画像技術事典200に記事が載りました
(06/09)  光切断を画像センシング展で公開
(05/14)  中国(上海)へ行って来ました
(04/12)  韓国へ行って来ました
(03/10)  私の求める新人像
(01/18)  エレクトロテストジャパンにカラー光切断法のデモを出展しました。
(12/23)  ユニークアクセス200万達成!
(12/10)  【カラー光切断法】YouTube動画まとめ
(11/04)  国際画像機器展2014にカラー光切断法を出展します。
(10/05)  第25回コンピュータビジョン勉強会@関東に参加してきました。
(09/08)  フーリエ変換の記事を追加しました。
(08/09)  【画像処理】ランキング低下中
(07/06)  記事の更新が停滞中...
(06/08)  画像センシング展2014でカラー光切断法のデモを行います。
(05/17)  カラー光切断法の動画を公開しました。
(04/30)  ソニーα NEX-5Rで星空撮影
(04/10)  カラー光切断法の取込結果を追加しました
(03/08)  Korea Vision Show 2014へ行ってきました
(02/05)  フーリエ変換シリーズを始めます。
(01/06)  2014年、あけましておめでとうございます。
(12/04)  カラー光切断法を公開(国際画像機器展2013にて)
(11/13)  国際画像機器展2013に出展します
(10/14)  「画像処理のためのC#」はじめます。
(09/16)  【C#,VB.NET】高速描画コントロールをバージョンアップしました。
(09/04)  拡大鏡に輝度値表示、ルーラー機能を追加した個人ツールを公開
(08/05)  7月の拍手Top5
(07/06)  2013年6月人気記事Top5
(05/12)  SONY α NEX-5Rレビュー
(04/24)  SONY α NEX-5RY購入

【OpenCV】開発環境(VisualStudio)の設定

メインページOpenCV
 

ライブラリを使うには、ダイナミックライブラリファイル(*.dll)ライブラリファイル(*.lib)インクルードファイル(ヘッダファイル)(*.h)が必要になり、これらを使えるようにVisualStudioの設定をする必要があります。以下、OpenCVをC++/CLIで使う場合の設定です。

dllファイルの設定については、 OpenCVの入手ダウンロード、インストール、環境設定 のページで紹介していますので、そちらを参照下さい。

インクルードファイル(*.h)の設定は、メニューのプロジェクト【プロジェクト名】のプロパティで設定ウィンドウを開きます。

インクルードファイルの設定

ここで、構成はすべての構成を選択し、構成のプロパティC/C++全般を選択し、追加のインクルードファイルの右の方にある参照ボタンをクリックし、インクルードファイル(*.h)のあるディレクトリを指定します。

インクルードディレクトリの設定

デフォルトのインストールではディレクトリは以下を追加下さい。

C:\Program Files\OpenCV\cv\include
C:\Program Files\OpenCV\cvaux\include
C:\Program Files\OpenCV\cxcore\include
C:\Program Files\OpenCV\otherlibs\highgui


次にライブラリファイル(*.lib)の設定を行います。
インクルードファイルの設定と同じように、メニューのプロジェクト【プロジェクト名】のプロパティを選択し、今度は構成プロパティリンカ全般追加ライブラリディレクトリを選択します。

ライブラリファイルの設定

右側の参照ボタンをクリックし、ライブラリファイル(*.lib)のあるディレクトリを指定します。
デフォルトのインストールでは

C:\Program Files\OpenCV\lib

を追加します。

ライブラリファイルの設定

次に実際に使うライブラリファイル(*.lib)ファイルの設定を行います。
この設定はメニューのプロジェクト【プロジェクト名】のプロパティを選択し、構成プロパティリンカ入力追加の依存ファイルを追加します。
とりあえず、以下の4つを追加しておけばほとんど大丈夫です。

cv.lib cxcore.lib cvaux.lib highgui.lib

ライブラリファイルの設定

これで、ダイナミックライブラリファイル(*.dll)、ライブラリファイル(*.lib)、インクルードファイル(ヘッダファイル)(*.h)の参照設定は完了です。

ここで、参照設定したライブラリはおおまかにいうと以下のように分類されています。

cv画像処理全般
cxcore行列などの数値演算
cvauxステレオマッチングなどの高機能処理
highguiguiおよびファイル入出力

詳細は以下ページを参照下さい。
http://opencv.jp/opencv-1.1.0/document/index.html

次にC++/CLIでOpenCVを使うためには、初期状態ではポインタなどのいわゆるアンマネージのコードは使えないので、ポインタを使えるように設定します。

メニューのプロジェクト【プロジェクト名】のプロパティを選択し、構成プロパティ全般共通言語ランタイムサポート純粋MSIL共通言語ランタイムサポート(/clr:pure)から共通言語ランタイムサポート(/clr)に変更します。

C++/CLIの設定

これですべての設定は完了です。
ただし、構成のプロパティ設定はDebugとReleaseの設定があるので、今回の設定ではDebugとReleaseの設定を同じにしたいので、すべての構成を選択して設定するようにご注意下さい。

サンプルプログラムについては
C++/CLIによるサンプルプログラム
のページで紹介しているので、こちらをご参照下さい。
Loading...
スポンサーリンク

スポンサーリンク 最近の記事
(09/18)  計測測定展に光切断のデモを出展しました
(08/17)  ディジタル画像技術事典200に記事が載りました
(06/09)  光切断を画像センシング展で公開
(05/14)  中国(上海)へ行って来ました
(04/12)  韓国へ行って来ました
(03/10)  私の求める新人像
(01/18)  エレクトロテストジャパンにカラー光切断法のデモを出展しました。
(12/23)  ユニークアクセス200万達成!
(12/10)  【カラー光切断法】YouTube動画まとめ
(11/04)  国際画像機器展2014にカラー光切断法を出展します。
(10/05)  第25回コンピュータビジョン勉強会@関東に参加してきました。
(09/08)  フーリエ変換の記事を追加しました。
(08/09)  【画像処理】ランキング低下中
(07/06)  記事の更新が停滞中...
(06/08)  画像センシング展2014でカラー光切断法のデモを行います。
(05/17)  カラー光切断法の動画を公開しました。
(04/30)  ソニーα NEX-5Rで星空撮影
(04/10)  カラー光切断法の取込結果を追加しました
(03/08)  Korea Vision Show 2014へ行ってきました
(02/05)  フーリエ変換シリーズを始めます。
(01/06)  2014年、あけましておめでとうございます。
(12/04)  カラー光切断法を公開(国際画像機器展2013にて)
(11/13)  国際画像機器展2013に出展します
(10/14)  「画像処理のためのC#」はじめます。
(09/16)  【C#,VB.NET】高速描画コントロールをバージョンアップしました。
(09/04)  拡大鏡に輝度値表示、ルーラー機能を追加した個人ツールを公開
(08/05)  7月の拍手Top5
(07/06)  2013年6月人気記事Top5
(05/12)  SONY α NEX-5Rレビュー
(04/24)  SONY α NEX-5RY購入

【OpenCV】OpenCVの入手ダウンロード、インストール、環境設定

メインページOpenCV
 
※2012.1月現在OpenCV2.3.1が公開されています。
  OpenCV2.3.1についての解説は
     OpenCV2.3.1 の入手、ダウンロード、インストール、環境設定
  を参照下さい。

以下はVer1.0の時の説明です。

OpenCVの入手は、下記リンク先

http://sourceforge.net/projects/opencvlibrary

より
View all files をクリックし opencv-win のVer1.0版をダウンロードして下さい。
OpenCV2.0Beta版も公開されましたが、私の公開しているサンプルプログラムで
動作するかどうかは、まだ未評価です。

【2009.8.25追記】----------------------------
OpenCVの1.1prea1版をインストールすると、私が公開しているサンプルプログラム
【OpenCV】C++/CLIによるサンプルプログラムでは、ファイルを開くとき、

 -----------------------------------------------------------------
'System.Threading.ThreadStateException' のハンドルされていない例外が System.Windows.Forms.dll で発生しました。

追加情報: OLE が呼び出される前に、現在のスレッドが Single Thread Apartment (STA) モードに設定されていなければなりません。Main 関数に STAThreadAttribute が設定されていることを確認してください。 この例外はデバッガがプロセスにアタッチされている場合にのみ発生します。
 -----------------------------------------------------------------

というメッセージが出てファイルを開く事ができません。
しょうがないので、現状では
View all files よりVer1.0版をダウンロードし
セットアップしてみて下さい。
Ver.1.0ではサンプルプログラムは動作してくれました。
------------------------------------------------------

次にインストールです。

保存したファイルOpenCV_1.0.exeをダブルクリックしOpenCVをインストールします。

(以下、Windows Vistaにデフォルトの設定のまま、インストールした場合の説明をします。)

次にOpenCVの動作環境の設定(Pathの登録)を行います。
(セットアップ中にPathの登録を行っているような表示がされますが登録されていない場合が多いようです。)

スタートボタンをクリック コンピュータを右クリック プロパティをクリックします。

OpenCVの環境設定

開いたウィンドウの システムの詳細設定 をクリックします。

OpenCVの環境設定

次に詳細設定タブの環境変数ボタンをクリックします。

OpenCVの環境設定

環境変数のPathを選択し、編集ボタンをクリック

OpenCVの環境設定

変数値のテキストボックスの最後の部分に

;C:\Program Files\OpenCV\bin

と追記します。もともとあった文字は消さないようにご注意ください。
最初の ; (セミコロン)を付けるのもお忘れなく。

これで、環境設定は完了です。

確認のために、 C:\Program Files\OpenCV\samples\c 内にある実行ファイル(*.exe)を実行してみて下さい。これで、実行できるはずです。どのような処理がOpenCVで出来るのか?参考になると思います。

ちなみに、OpenCVをインストールすると C:\Program Files\OpenCV\_make というフォルダ内に
opencv.vs2005.sln というファイルがあるので、これを実行すると、OpenCVのソースコードを見ることができます。ソースを見ることで、OpenCV内ではどのような事をしているのか?特にメモリの確保や解放はどのようにされているのか?の参考になるので、たまには覗いてみるのもよいでしょう。
ただし、コンパイルして、コンパイルに失敗するとbinフォルダ内のdllファイルが削除される場合があるので、ご注意下さい。

OpenCVのプログラムを組むには、別途、VisualStudioの設定が必要です。
これついては、 開発環境(VisualStudio)の設定 のページで紹介していますので、そちらを参照願います。
Loading...
スポンサーリンク

スポンサーリンク 最近の記事
(09/18)  計測測定展に光切断のデモを出展しました
(08/17)  ディジタル画像技術事典200に記事が載りました
(06/09)  光切断を画像センシング展で公開
(05/14)  中国(上海)へ行って来ました
(04/12)  韓国へ行って来ました
(03/10)  私の求める新人像
(01/18)  エレクトロテストジャパンにカラー光切断法のデモを出展しました。
(12/23)  ユニークアクセス200万達成!
(12/10)  【カラー光切断法】YouTube動画まとめ
(11/04)  国際画像機器展2014にカラー光切断法を出展します。
(10/05)  第25回コンピュータビジョン勉強会@関東に参加してきました。
(09/08)  フーリエ変換の記事を追加しました。
(08/09)  【画像処理】ランキング低下中
(07/06)  記事の更新が停滞中...
(06/08)  画像センシング展2014でカラー光切断法のデモを行います。
(05/17)  カラー光切断法の動画を公開しました。
(04/30)  ソニーα NEX-5Rで星空撮影
(04/10)  カラー光切断法の取込結果を追加しました
(03/08)  Korea Vision Show 2014へ行ってきました
(02/05)  フーリエ変換シリーズを始めます。
(01/06)  2014年、あけましておめでとうございます。
(12/04)  カラー光切断法を公開(国際画像機器展2013にて)
(11/13)  国際画像機器展2013に出展します
(10/14)  「画像処理のためのC#」はじめます。
(09/16)  【C#,VB.NET】高速描画コントロールをバージョンアップしました。
(09/04)  拡大鏡に輝度値表示、ルーラー機能を追加した個人ツールを公開
(08/05)  7月の拍手Top5
(07/06)  2013年6月人気記事Top5
(05/12)  SONY α NEX-5Rレビュー
(04/24)  SONY α NEX-5RY購入

【C++/CLI】VB6.0のDebug.Printに代わるものは?

メインページC++/CLI プログラミング


VB6.0ではDebug.Printを使って、デバッグ実行中に変数の値などを見ることができましたが、
C++/CLIではDebugクラスWriteメソッドWriteLineメソッドを使って出力ウィンドウ
出力することが可能です。

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
             
             for (int i = 0; i < 10; i++){
                #ifdef _DEBUG
                     System::Diagnostics::Debug::Write("i = ");                 //改行なし
                     System::Diagnostics::Debug::WriteLine(i.ToString());    //改行あり
                #endif
             }
}

上記プログラムをデバッグ実行すると、下図のように出力ウィンドウへ出力されます。

Debug.Printに代わるもの

Writeは改行がなく、WriteLineは改行付きで出力ウィンドウへ表示されます。
Write/WiteLineメソッドでは引数に文字列だけでなく、Objectも渡すことができ、例えば、

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
            
             #ifdef _DEBUG
                     System::Diagnostics::Debug::WriteLine(
sender);
             #endif
}


とすると出力ウィンドウへは

 System.Windows.Forms.Button, Text: button1

と表示されます。

ここで、Debugクラスなのになぜ 
#ifdef _DEBUG を付ける必要があるのか?と思ったりもしますが、このページ↓
http://msdn.microsoft.com/ja-jp/library/system.diagnostics.debug(VS.80).aspx

を見る限りだと、C++だけはどうやら必要のようです。
 
これを知るまでは、ブレークでいちいち止めて、ウォッチで値を確認しながらデバッグしてて、大変でした...
 
 

Loading...
スポンサーリンク

スポンサーリンク 最近の記事
(09/18)  計測測定展に光切断のデモを出展しました
(08/17)  ディジタル画像技術事典200に記事が載りました
(06/09)  光切断を画像センシング展で公開
(05/14)  中国(上海)へ行って来ました
(04/12)  韓国へ行って来ました
(03/10)  私の求める新人像
(01/18)  エレクトロテストジャパンにカラー光切断法のデモを出展しました。
(12/23)  ユニークアクセス200万達成!
(12/10)  【カラー光切断法】YouTube動画まとめ
(11/04)  国際画像機器展2014にカラー光切断法を出展します。
(10/05)  第25回コンピュータビジョン勉強会@関東に参加してきました。
(09/08)  フーリエ変換の記事を追加しました。
(08/09)  【画像処理】ランキング低下中
(07/06)  記事の更新が停滞中...
(06/08)  画像センシング展2014でカラー光切断法のデモを行います。
(05/17)  カラー光切断法の動画を公開しました。
(04/30)  ソニーα NEX-5Rで星空撮影
(04/10)  カラー光切断法の取込結果を追加しました
(03/08)  Korea Vision Show 2014へ行ってきました
(02/05)  フーリエ変換シリーズを始めます。
(01/06)  2014年、あけましておめでとうございます。
(12/04)  カラー光切断法を公開(国際画像機器展2013にて)
(11/13)  国際画像機器展2013に出展します
(10/14)  「画像処理のためのC#」はじめます。
(09/16)  【C#,VB.NET】高速描画コントロールをバージョンアップしました。
(09/04)  拡大鏡に輝度値表示、ルーラー機能を追加した個人ツールを公開
(08/05)  7月の拍手Top5
(07/06)  2013年6月人気記事Top5
(05/12)  SONY α NEX-5Rレビュー
(04/24)  SONY α NEX-5RY購入

【C++/CLI】ツールバーを付ける

メインページC++/CLI プログラミング


メニューを付けるのページで作成したメニュー付きのウィンドウにツールバーを付けたいと思います。

ツールバーを付けるにはツールボックスの中からToolStripを選択し、フォームへドラッグ&ドロップします。

ツールバーを付ける

ToolStripButtonの追加ボタンの右側に表示されている▼マークをクリックし、表示されたメニューの中からButtonを選択します。

追加したボタンを選択し、プロパティウィンドウを表示し、ボタンの名前やアイコンのイメージなどを設定します。

アイコンのファイルはVisualStudio2005の場合、
C:\Program Files\Microsoft Visual Studio 8\Common7\VS2005ImageLibrary
のフォルダの中にVS2005ImageLibrary.zipというファイルがあるので、このファイルを解凍すると一般的なアイコンはこの中に揃っています。
(今回は\bitmaps\commands\pngformatフォルダ内のopenHS.pngを使いました。)

次にイベント処理の追加です。
ファイルメニューの時と同じ用に、追加したボタンをダブルクリックして、自動的に作成されたイベント処理の部分にソースコードを記載しても良いのですが、ツールボタンの場合、ファイルメニューと同じ処理を行う場合が良くあります。

この場合、プロパティウィンドウのイベントを表示し、Clickの右側にある▼ボタンをクリックすると、
これまで追加したイベント処理の一覧が表示されます。
今回はファイルを開くと同じ処理を行いたいので、この中からmnuFileOpen_Clickを選択します。

これで
ツールボタンをクリックした時、ファイルメニューのファイルを開くの処理と同一の処理を
行う事ができます。

ツールバーの追加

また、ToolStripをフォームに配置する前にToolStripContainerをフォームに配置し、フォームの四辺にドッキングをクリックし、その上にToolStripを配置することでツールバーの位置をプログラム実行時に上下左右に配置することが可能となります。

ツールバーの追加

ツールバーをプログラム実行時に下側に移動した様子↓

ツールバーの移動
  
  

Loading...
スポンサーリンク

スポンサーリンク 最近の記事
(09/18)  計測測定展に光切断のデモを出展しました
(08/17)  ディジタル画像技術事典200に記事が載りました
(06/09)  光切断を画像センシング展で公開
(05/14)  中国(上海)へ行って来ました
(04/12)  韓国へ行って来ました
(03/10)  私の求める新人像
(01/18)  エレクトロテストジャパンにカラー光切断法のデモを出展しました。
(12/23)  ユニークアクセス200万達成!
(12/10)  【カラー光切断法】YouTube動画まとめ
(11/04)  国際画像機器展2014にカラー光切断法を出展します。
(10/05)  第25回コンピュータビジョン勉強会@関東に参加してきました。
(09/08)  フーリエ変換の記事を追加しました。
(08/09)  【画像処理】ランキング低下中
(07/06)  記事の更新が停滞中...
(06/08)  画像センシング展2014でカラー光切断法のデモを行います。
(05/17)  カラー光切断法の動画を公開しました。
(04/30)  ソニーα NEX-5Rで星空撮影
(04/10)  カラー光切断法の取込結果を追加しました
(03/08)  Korea Vision Show 2014へ行ってきました
(02/05)  フーリエ変換シリーズを始めます。
(01/06)  2014年、あけましておめでとうございます。
(12/04)  カラー光切断法を公開(国際画像機器展2013にて)
(11/13)  国際画像機器展2013に出展します
(10/14)  「画像処理のためのC#」はじめます。
(09/16)  【C#,VB.NET】高速描画コントロールをバージョンアップしました。
(09/04)  拡大鏡に輝度値表示、ルーラー機能を追加した個人ツールを公開
(08/05)  7月の拍手Top5
(07/06)  2013年6月人気記事Top5
(05/12)  SONY α NEX-5Rレビュー
(04/24)  SONY α NEX-5RY購入

【C++/CLI】メニューを付ける

メインページC++/CLI プログラミング


新規プロジェクトの作成のページでは、何もしないだたのウィンドウ表示のプログラムを作成しましたが、このウィンドウにメニューを付けたいと思います。

と、その前に簡単にVisualStudioの操作説明をしたいと思います。

フォーム(ウィンドウ)上にメニューやボタンなどを配置するときは、
ソリューションエクスプローラのタブを選択し、フォームのファイル(*.h)を選択し、デザイナの表示アイコンをクリックします。

ファイルメニューを付ける

デザイナの表示からイベント処理などのソースコードを書くときはコードの表示アイコンをクリックします。

メニューを付ける

オブジェクト(メニューやボタン、ピクチャボックスなど)の名前や大きさ、位置などの情報を設定するには右下のプロパティタブを選択し、プロパティアイコンをクリックします。

メニューを付ける

メニューをクリックしたときなどの処理(イベント処理)を表示するにはイベントアイコンをクリックします。

イベント処理

と、準備はここまで。

フォームファイル(*.h)を選択し、デザイナを表示します。
右側のツールボックスをタブを選択し、この中から
MenuStripを選択し、フォームの上にドラッグ&ドロップします。

メニューの追加

次にここへ入力と書かれた部分に表示するメニューの文字を記入していきます。

メニューを付ける

ここで、ファイルの文字の右側に(F)と表示されていますが、これはメニューをAltキーを使って操作するときの文字で、文字の入力時にはファイル(&F)のようにアルファベットの頭に&を付けます。
また、メニューの間に表示されている仕切り線(
Separator)はここへ入力の部分に (ハイフン)を入力します。

メニューを付ける

ここで、デフォルトではそれぞれのメニューの名前(Name)は開くOToolStripMenuItemなどとなっており、このままだとソースコードに日本語が入ってしまっていまいちなので、それぞれ下表のように名前を付けておきます。

Text(Name)
ファイル(&F)mnuFile
開く(&O)mnuFileOpen
終了(&X)mnuFileExit

この名前の付け方はVB6.0の時に使っていたプレフィックスを用いていますが、詳しく知りたい方は
このページ↓を参照すると良いと思います。
http://msdn.microsoft.com/en-us/library/aa263493(VS.60).aspx

次にメニューをクリックしたときの処理(イベント処理)を追加していきます。
メニューのイベント処理は開く(O)をダブルクリックすると、メニューをクリックした時の処理のソースコードが自動的に作成されます。このへんはVB6.0と同じです。

private: System::Void mnuFileOpen_Click(System::Object^  sender, System::EventArgs^  e) {

             }

この{   } の間にメニューをクリックしたときの処理を書いていきます。
下記は開くメニューをクリックした時にファイルを開くダイアログボックスを表示し、ファイル名を眼セージボックスで表示するソースコードです。

 private: System::Void mnuFileOpen_Click(System::Object^  sender, System::EventArgs^  e) {
                 //ファイル→ファイルを開く
                 
                 //ファイルを開くダイアログの作成
                 OpenFileDialog^ dlg = gcnew OpenFileDialog;
                 //ファイルフィルタ
                 dlg->Filter = "画像ファイル(*.bmp,*.jpg,*.png,*.tif,*.ico)|*.bmp;*.jpg;*.png;*.tif;*.ico";
                 //ダイアログの表示 (Cancelボタンがクリックされた場合は何もしない)
                 if (dlg->ShowDialog() == System::Windows::Forms::DialogResult::Cancel) return;
                 //取得したファイル名の表示
                 MessageBox::Show(dlg->FileName);

             }

終了メニューは下記の通りです。

private: System::Void mnuFileExit_Click(System::Object^  sender, System::EventArgs^  e) {
                 //ファイル→終了
                 this->Close();
             }

このコードでプログラムが終了します。

Loading...
スポンサーリンク

スポンサーリンク 最近の記事
(09/18)  計測測定展に光切断のデモを出展しました
(08/17)  ディジタル画像技術事典200に記事が載りました
(06/09)  光切断を画像センシング展で公開
(05/14)  中国(上海)へ行って来ました
(04/12)  韓国へ行って来ました
(03/10)  私の求める新人像
(01/18)  エレクトロテストジャパンにカラー光切断法のデモを出展しました。
(12/23)  ユニークアクセス200万達成!
(12/10)  【カラー光切断法】YouTube動画まとめ
(11/04)  国際画像機器展2014にカラー光切断法を出展します。
(10/05)  第25回コンピュータビジョン勉強会@関東に参加してきました。
(09/08)  フーリエ変換の記事を追加しました。
(08/09)  【画像処理】ランキング低下中
(07/06)  記事の更新が停滞中...
(06/08)  画像センシング展2014でカラー光切断法のデモを行います。
(05/17)  カラー光切断法の動画を公開しました。
(04/30)  ソニーα NEX-5Rで星空撮影
(04/10)  カラー光切断法の取込結果を追加しました
(03/08)  Korea Vision Show 2014へ行ってきました
(02/05)  フーリエ変換シリーズを始めます。
(01/06)  2014年、あけましておめでとうございます。
(12/04)  カラー光切断法を公開(国際画像機器展2013にて)
(11/13)  国際画像機器展2013に出展します
(10/14)  「画像処理のためのC#」はじめます。
(09/16)  【C#,VB.NET】高速描画コントロールをバージョンアップしました。
(09/04)  拡大鏡に輝度値表示、ルーラー機能を追加した個人ツールを公開
(08/05)  7月の拍手Top5
(07/06)  2013年6月人気記事Top5
(05/12)  SONY α NEX-5Rレビュー
(04/24)  SONY α NEX-5RY購入

残効錯視

メインページ画像処理プログラミング


今回はちょっとお遊び。
色の付いた画像をしばらく見て、モノクロの画像を見ると、このモノクロの画像がカラーに
見えるという錯覚(残効錯視)なるものがあるのは知っていたのですが、今日、
『ザ・ベストハウス123』という番組で少し詳しく解説をやっていた。

それによると、本来のカラーの色の補色(反転色)を見てから、モノクロ画像を見ると
脳の錯覚によりモノクロの画像がカラーに見えるらしい...

この残効錯視を任意の画像で体験できるようにプログラムを作ってみました。

以下、プログラムの動作について。

最初にカラーの画像を開くと、もとのカラー画像がちょっとチラ見
残効錯視

次に色を反転した画像を20秒間表示
残効錯視

20秒後、モノクロ画像を表示
残効錯視

すると、モノクロの画像のはずの画像がカラーに見えます。
中心の黒い点から目を離さずに見ていると、長くカラーに見えます。

で、こちらが動作イメージ
残効錯視


このプログラムはこちらIEにて右ボタン→対象をファイルに保存)からダウンロードできます。
(.NET Framework2.0が必要です。)

適当に作ったので、バグがあったらごめんなさい。
(モノクロ画像を開くと確実にエラーになると思います。)

興味があればダウンロードしてみて下さい。

  

Loading...
スポンサーリンク



現在の閲覧者数: / 合計