fc2ブログ
 カレンダー

11月 │2023年12月│ 01月
- - - - - 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
31 - - - - - -

 プロフィール

はしもと

Author:はしもと
ユーザインタフェース系のお仕事をしてます.関心領域は画像処理,拡張現実感,ヒューマンコンピュータインタラクション,エンタテインメントコンピューティングあたり.モノ書きもやってます.

 工学ナビ

工学ナビは工学系の技術のチュートリアルを扱うサイトです.

 作ったもの

 Twitter

 

 天気予報


 ブログ内検索

 カテゴリー

最新コメント

 RSSフィード

 リンク

このブログをリンクに追加する




工学ナビの中の人 はしもとのブログです. いろんなコトを研究的,工学的な視点で見つめます.
ガチでやる画像処理プログラミング
このあいだ,dandelionさんがスゲーいいこと言ってたから問答無用で引用します.

/****** [ここから余談]******
OpenCVの普及により画像処理という分野が身近になったのはいいのですが,最初からOpenCVに依存しすぎると,理屈がわかっていなくても高度なアルゴリズムが簡単に組めてしまうため,いざ応用となるとアタフタということになりがちなので,C言語習いたての人なんかはRAWファイルを使って一からアルゴリズムをコーディングしてみるのも後々ためにいい勉強になりそう.C言語に慣れてきたら,ppmなどファイル情報がヘッダ部に書き込まれているようなフォーマットにチャレンジするとかね.
******[ここまで余談] ******/



要約すると

「Haar-likeによる顔検出くらいOpenCVに頼らず自分で組みやがれ」

ってことですかね? (※冗談ですから)


僕の場合,最初はビットマップ画像を読み書きするプログラム(当初は動的なメモリ確保なんてわからなかったから,サイズ固定でやってた)に始まり,キャプチャ,ウィンドウ,画像クラス,画像処理クラス・・・とほとんど自分で組んできましたが,良い勉強になったと思っています.ケースバイケースでOpenCVも使ってます.

すでにあるものを作ると,「車輪の再発明だ」なんて揶揄されることもありますが,そういうのも時には必要だと思います.勉強としての意味もありますが,やっぱり仕様を自分で把握できているほうがいいし,自分にとって使いやすいインタフェースのほうがいいので.

ついでなので,OpenCVに頼らずにガチで画像処理プログラミングをやりたい人のために参考文献を紹介しておきます.


フルスクラッチによるグラフィックスプログラミング入門
フルスクラッチによるグラフィックスプログラミング入門須崎 亮太郎

秀和システム 2004-12
売り上げランキング : 193872

おすすめ平均 star
star0からのスタートにはお勧め
starなかなか手に入らない内容
star自家製車輪の作り方

Amazonで詳しく見る
by G-Tools


画像を扱うクラスの設計からグラフィックの表示,画像処理まで手広くカバー.libJpegのコンパイルのゴタゴタ(経験者はわかると思いますが)の話を如実に記した本はおそらくこの本以外にないと思う.そんな感じで実作業に沿った内容になってて良本.挿絵はあのお方.プログラミングの本なのに読んでて面白いから困る.


はじめての動画処理プログラミング―Win32APIとDirectXで実装する動画処理の基礎 (プログラミング・マスタ・シリーズ)
はじめての動画処理プログラミング―Win32APIとDirectXで実装する動画処理の基礎 (プログラミング・マスタ・シリーズ)土井 滋貴

CQ出版 2007-02
売り上げランキング : 31035


Amazonで詳しく見る
by G-Tools

DirectShowプログラミングの参考ソースでお世話になった人も多いだろう,土井先生の本.Amazonにはえらくネガティブなレビューが書かれてますが,DirectShowキャプチャをまともに扱った本がこれ以外にないのも事実.USBカメラを使ってキャプチャ&画像処理をやるプログラムを自分で実装したい人はこれをチェック.


C言語による画像処理入門
C言語による画像処理入門安居院 猛 長尾 智晴

昭晃堂 2000-11
売り上げランキング : 83016


Amazonで詳しく見る
by G-Tools

学部生時代に周囲の所持率が高かった本.定番のフィルタリングから入って符号化や立体認識など基礎的な画像処理の話をカバー.画像ファイルの読み書きができるようになったら読もう.画像処理の解説書と一緒に読むと良いです.


【08/06/25追記↓】
詳解 画像処理プログラミング C言語で実装する画像処理アルゴリズムのすべて
詳解 画像処理プログラミング C言語で実装する画像処理アルゴリズムのすべて昌達 慶仁

ソフトバンククリエイティブ 2008-03-27
売り上げランキング : 4858

おすすめ平均 star
starとてもわかりやすくて、多くのアルゴリズムを網羅しています。

Amazonで詳しく見る
by G-Tools


(2008年6月現在)最もおすすめする「ガチでやる系」の画像処理プログラミングの本です.なんといっても情報量がすごいです.そのページ数は560ページにもおよびます.また,各種処理ごとに関数がいい感じにまとめられていて,おいしいとこ取りができて非常に良いです.コードも環境依存がなく,アルゴリズムがわかるように書かれています.現時点で最強のバイブルとなりうる一冊.たぶんこれを超える本はあと5年は出ないと思う.


この記事に対するコメント
はじめまして
はじめて拝見させていただきました。
僕も大学院で画像処理やってますが、その通りだと思います。
詳しくわかってないと応用のときに、何をしたらよいか方針すらたたないことがあります。

ただ力不足から、自分でくんじゃうとおそろしく遅くなっちゃうんですけどね・・・・w

またちょくちょく訪れます。
【2008/02/10 23:32】 URL | い #- [ 編集]

引用ありがとうございます
問答無用で引用されたdandelionです.
こんばんは.

>要約すると
>「Haar-likeによる顔検出くらいOpenCVに頼らず自分で組みやがれ」
>ってことですかね? (※冗談ですから)
ちょ,そこまでは言ってな(以下略)
まぁ,過去の自分への戒め的な意味合いもありますけど。。。(苦笑)

>勉強としての意味もありますが,やっぱり仕様を自分で把握できているほうがいいし,
>自分にとって使いやすいインタフェースのほうがいいので.
OpenCVにある関数ひとつとっても,パラメータの説明がドキュメントに書いてあるにも関わらず,
ある程度アルゴリズムの知識が無いとどう設定していいかわからないという罠が。。。

あと,社会人になってから特に思うのですが,「車輪の再発明」って学生のときにもっと
やるべきだったなぁと思います.ひとつの問題に対して,自分ならどうやって攻めるかを
考えることで,たとえ,「車輪の再発明」だったとしても自身の理解も深まるし,
既存のものの設計思想に対しても考えが及ぶようになるんじゃないかなと.
そういう経験って大事な気がする今日この頃.

>ついでなので,OpenCVに頼らずにガチで画像処理プログラミングを
>やりたい人のために参考文献を紹介しておきます.
土井先生のサイトには高専時代からお世話になりました.
あの当時,(僕程度にでもわかるような)DirectShowの解説がなかったので,
めちゃくちゃ重宝しました.あと,「C言語による画像処理入門」もC言語の
画像処理の導入にはうってつけというくらいわかりやすかったです.

それと,個人的には,
Computer Vision: A Modern Approachの訳本
http://www.amazon.co.jp/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF
%E3%83%93%E3%82%B8%E3%83%A7%E3%83%B3-David-Forsyth/dp/4320121570/ref=pd_sbs_b_title_19
がおススメです.
割と新しいアルゴリズムがわかりやすく解説されているので,今最も個人的に欲しい一冊です
(↑学生時代は高くて手が届かなかったので,図書館で読むのが精一杯だった人)

***
余談ですが,
http://ti.arc.nasa.gov/visionworkbench/
http://research.nokia.com/research/projects/nokiacv/
最近,こんなところも,ライブラリ提供してるんですね.
Nokiaはなんとなくわかるけど,NASAが意外すぎる.

ということで,長文失礼しました.
【2008/02/11 00:49】 URL | dandelion #lA.wbPnA [ 編集]


> い さん
はじめましてこんにちは! コメントありがとうございます.

> ただ力不足から、自分でくんじゃうとおそろしく遅くなっちゃうんですけどね・・・・w

画像処理における「速度」は,ある程度はハードウェアに頼ってしまっていいと思いますよ.タイトルに威勢よく「RealTime」の文字が踊ってる論文にかぎって,ハンパない鬼スペックのPC使ってたり,FPGAでハードレベルで実装してたりしますからね.ゴリ押しがきく時代になってきたなぁと思います.
【2008/02/11 03:06】 URL | なおき #F54KmX5Y [ 編集]


> dandelionさん
日ごろから思っていたことを代弁(?)してくださっていたので,思わず引用させていただきました!

>あと,社会人になってから特に思うのですが,「車輪の再発明」って学生のときにもっと
>やるべきだったなぁと思います.ひとつの問題に対して,自分ならどうやって攻めるかを
>考えることで,たとえ,「車輪の再発明」だったとしても自身の理解も深まるし,
>既存のものの設計思想に対しても考えが及ぶようになるんじゃないかなと.

車輪の再発明って方法論の勉強ですよね.一度ゼロからやるのを経験しておくと
自分の攻め方というのが確立されて,未知の問題に対しても対処していける気が
します.

>Computer Vision: A Modern Approachの訳本
あーやっぱりチェックされてましたか.本屋やら生協やらで見かけるたびに気に
なってるんですが,なかなか買うのに至りません.高いのがネックですね.

>最近,こんなところも,ライブラリ提供してるんですね.
>Nokiaはなんとなくわかるけど,NASAが意外すぎる.

おっと!? これは知らない情報でした.今度チェックしてみます.
【2008/02/11 03:29】 URL | なおき #F54KmX5Y [ 編集]


まぁつまりは大学の授業のことですよね
【2008/02/13 13:37】 URL | kak #RaQH74uA [ 編集]


> kakさん
> まぁつまりは大学の授業のことですよね

あー 確かにそうですね.
【2008/02/14 15:04】 URL | なおき #F54KmX5Y [ 編集]




この記事に対するコメントの投稿














管理者にだけ表示を許可する


この記事に対するトラックバック
トラックバックURL
→http://kougaku.blog28.fc2.com/tb.php/280-7e12c8a4
この記事にトラックバックする(FC2ブログユーザー)

朝のネタ拾い

何故男女で会話がかみ合わないのか - No Hedge! のブクマコメより。 id:filinion 男だって、共感なしで解決策だけ出されたらカチンとこないかなあ。 例:「なんか、最近薄くなって来たような気がするんだ……」「カツラ買えば?」 同意する会話にしてみた。 「なんか、最近 Nunockyの日記【2008/02/12 10:34】

C言語による画像処理入門

C言語による画像処理入門 画像処理やりたい!!と思っているときに出会った本. 不親切な画像処理本が多い中,とても親切な内... もぼなもな書房【2009/05/21 19:30】

フルスクラッチによるグラフィックスプログラミング入門

フルスクラッチによるグラフィックスプログラミング入門 ゲーム作りたいんだけど、アンチエイリアスかけるのどうやるんだろ?と... もぼなもな書房【2009/09/04 14:30】