如何自學圖像編程(轉)

? ? 現(xiàn)在算柳,圖像類信息越來越多了,對圖像的編程需求也越來越多旧蛾。圖像類項目的特點是性價比高,單行代碼的價格一般是普通的程序的10倍蠕嫁,每行代碼能夠賣幾塊錢锨天。很多人把目光放在這個上面。剛才又有網(wǎng)友咨詢剃毒,做圖像要看些什么書病袄?結合我的自學經(jīng)驗,寫一篇博客談談這個問題赘阀。

需要先明確幾個問題:

(1)你的基礎如何益缠?做圖形圖像的話,對數(shù)學要求比較高基公,至少要有大學數(shù)學的基礎——微積分幅慌、線性代數(shù)、概率統(tǒng)計和數(shù)值分析都會用到的轰豆。不然胰伍,書看不下去,沒法自學酸休。如果要做深入的話骂租,對英語也有一定的要求,絕大部分深入的資料都是英文的斑司。

(2)做哪個層面的渗饮?與硬件嚴重相關的只能選C,做應用層的話可以選C++和C#,我個人推薦C#抽米,當然特占,智能手機還是推薦C++。做Web層面的話云茸,目前最佳選擇是Flash(其實Silverlight比Flash更適合做Web圖像是目,好歹Silverlight有byte類型,有struct标捺,但Silverlight的普及度不夠)懊纳,Html5/Canvas目前只能做簡單的應用,復雜的還不行亡容。如果只是做算法嗤疯,matlab就夠了,但一般不是科班出生闺兢,很少做純算法的茂缚。做純算法還有個缺點就是,算法轉換為收入很難屋谭。鑒于C#寫算法并不比用matlab寫算法慢脚囊,不建議摸matlab。但matlab代碼要能看懂桐磁,因為論文中很多算法是用matlab寫的嘉赎。

(3)有沒有克服困難的勇氣尉姨。圖像類項目大多不大颂鸿,普遍的幾千行代碼就可以搞定扰藕。就這幾千行代碼,難度越大的錢越多校摩。關鍵詞就是困難和難度看峻,工作量往往不是問題。也就是說衙吩,你越牛逼备籽,越值錢。牛逼是沒有止境的分井,不像那些靠體力的項目车猬,身體是個硬的限制。

下面的書籍尺锚,如果是寫的英文名字珠闰,那就是推薦閱讀英文版,如果是中文名字瘫辩,那就說明伏嗜,中文版寫的/翻譯的也不錯坛悉,推薦看中文版而非英文版。都是可以直接下載到的或買到的承绸。

首先是兩本核心書籍:

(1)Image Processing裸影,Analysis and Machine Vision 3ED。(中文名:《圖像處理军熏、分析與機器視覺》)

(2)Computer Vision:

Algorithms and Application(中文名:《計算機視覺——算法與應用》)

第一本書偏重于基礎轩猩,但是它寫的可不基礎。寫的很簡且信息量極大荡澎,但核心概念都講了均践,重點算法大部分都列出來了。第二本書偏重于工程應用摩幔,概述了各個領域的有效算法彤委,點到為止。

如果看第二本沒困難的話或衡,可以忽略掉第一本焦影。第一本書也不好讀,一上來就講了狄拉克分布封断,因此偷办,要想從頭到尾都看懂是幾乎不可能的,但是它的內容的前后依存性不大澄港,看不懂的直接略過去就行了,只看能看懂的即可柄沮。

沒必要看完回梧,我也只看了30-40%感興趣的部分,其它的要么是不感興趣的祖搓,要么是看不懂的狱意。

只需要大學數(shù)學基礎就可以開始看,能看懂部分就可以做項目了拯欧。找到和項目相關的內容详囤,找到相應的參考文獻,直接去看論文實現(xiàn)論文的算法即可镐作。絕大部分重要論文Google

Scholar都能搜到原文藏姐,如果英文水平不夠,也可以在幾個期刊網(wǎng)搜中文的論文该贾,不是特別前沿的東西羔杨,中文的論文也有涉及到的。

看書的重點是理解杨蛋,理解算法最佳方式是自己把算法寫一遍兜材±砼欤可以參考OpenCV的代碼來寫。理解一個算法之后曙寡,這個算法就可以為你賺錢糠爬,不理解,是很難用對算法的举庶。自己寫算法执隧。你才對這個算法的性能有直觀的感受,知道可以通過哪些方式來改進它灯变,知道怎么在性能和算法效果之間進行取舍殴玛,這對項目來說,是很重要的添祸。

不建議買第二本書的中文版滚粟,它的中文版閹割了參考文獻和索引這兩個最有使用價值的部分。

把這兩本書全部看完吃透刃泌,單靠大學水平的數(shù)學是不夠的凡壤,至少得數(shù)學系本科生級別的知識儲備。如果大學數(shù)學忘了耙替,建議先復習一遍亚侠。

自學推薦:

(1)陳天權版《數(shù)學分析(一、二俗扇、三)》硝烂。這是國內最難的一套數(shù)學分析教材,為什么推薦它呢铜幽?它自成條理滞谢,信息量豐富,把圖像分析深入所需的數(shù)學內容都包括進去了:微積分除抛、點集拓撲狮杨、實分析、泛函到忽、變分橄教、復分析、流形……喘漏,重要概念都講了护蝶。學完了,看論文問題不大翩迈。缺點就是難滓走。可是帽馋,圖像類項目的特點也是難搅方。遇難而上是必須的比吭。這套書雖難,但是思路極其清晰姨涡,就是看的慢一點而已衩藤。要知道,計算機所能發(fā)揮出的威力只是數(shù)學理論的一部分涛漂,隨著計算機的計算能力越來越強赏表,越來越多的數(shù)學方法會引入到程序中來,對于圖像分析領域尤其如此匈仗。所以要未雨綢繆瓢剿,別看有的數(shù)學知識現(xiàn)在用不上,說不定哪天就用到了悠轩。

(2)Lax的《線性代數(shù)及其應用》间狂。作者是沃爾夫獎得主,寫的很簡潔明要火架,且不與大學學的線性代數(shù)重復鉴象。

(3)《Numerical Recipes》。數(shù)值分析有這一本書就夠了何鸡,秒殺眾書的書纺弊。這本書只看感興趣的或當前用到的即可。

鑒于圖形和圖像的關系越來越緊密骡男,關于圖形學的書籍也是值得一讀的淆游。推薦兩本:

(1)David F.Rogers的《計算機圖形學的算法基礎》。這本書實在是太經(jīng)典了隔盛,就是有點老犹菱,比較基礎。

(2)《實時計算機圖形學》這本書講的都是比較現(xiàn)代的骚亿,正好結合上一本看。

圖像編程=算法+性能熊赖。因此来屠,性能優(yōu)化方面也得看。比如這本:《軟件優(yōu)化技術--IA-32平臺的高性能手冊》震鹉。

會用Photoshop對圖像編程很重要俱笛。Photoshop有強大的編輯功能和特效庫,很多時候传趾,可以用Photoshop先進行預研究迎膜,確定項目是否可行〗迹可行的話磕仅,我們再把Photoshop的操作過程用算法來實現(xiàn)珊豹,實際項目中,經(jīng)常會這么操作的榕订。Photoshop推薦一本書:李金明店茶、李金榮的《Photoshop CS5完全自學教程》。這本書寫的非常棒劫恒,就是書名有點土贩幻,和那些垃圾書的書名很像。

如果用C/C++的話两嘴,推薦《學習OpenCV(中文版)》丛楚,翻譯的不錯。如果用C#的話憔辫,沒啥好書可以推薦趣些,可以看看我博客中的文章。如果用Flash的話螺垢,推薦《Foundation ActionScript 3.0

Image Effects》喧务。

如果做的是和彩圖有關的話,推薦《彩色數(shù)字圖像處理》枉圃。其它的功茴,《圖像局部特征不變性特征與描述》寫的也不錯。

====

下面舉個例子講講工具孽亲、知識間的綜合應用坎穿。

要實現(xiàn)一個lemo特效,可以先利用現(xiàn)有工具得到像素之間的映射圖(比如我這篇文章:《解決問題的藝術:半小時編程實現(xiàn)照片的反轉負沖特效》)返劲。但這樣一來玲昧,每種特效都需要一個像素映射圖,增大了程序的尺寸篮绿,怎么辦呢孵延?

一種方法是用Photoshop模擬它,然后亲配,寫圖像處理算法來重復這一過程尘应。這是用圖像處理的方法來解決問題。

另一種方法是將lemo特效當作一多元函數(shù)吼虎,特效前的圖像是輸入值犬钢,特效后的圖像是輸出值,先寫出一個自由度高點的函數(shù)思灰,再采用擬合的方法玷犹,找到合適的函數(shù)參數(shù),然后檢驗這個函數(shù)的穩(wěn)定性洒疚,靠譜的話就是它了歹颓。這是用數(shù)學的方法來解決問題坯屿。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市晴股,隨后出現(xiàn)的幾起案子愿伴,更是在濱河造成了極大的恐慌,老刑警劉巖电湘,帶你破解...
    沈念sama閱讀 211,423評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件隔节,死亡現(xiàn)場離奇詭異,居然都是意外死亡寂呛,警方通過查閱死者的電腦和手機怎诫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,147評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來贷痪,“玉大人幻妓,你說我怎么就攤上這事〗俾#” “怎么了肉津?”我有些...
    開封第一講書人閱讀 157,019評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長舱沧。 經(jīng)常有香客問我妹沙,道長,這世上最難降的妖魔是什么熟吏? 我笑而不...
    開封第一講書人閱讀 56,443評論 1 283
  • 正文 為了忘掉前任距糖,我火速辦了婚禮,結果婚禮上牵寺,老公的妹妹穿的比我還像新娘悍引。我一直安慰自己,他們只是感情好帽氓,可當我...
    茶點故事閱讀 65,535評論 6 385
  • 文/花漫 我一把揭開白布趣斤。 她就那樣靜靜地躺著,像睡著了一般黎休。 火紅的嫁衣襯著肌膚如雪浓领。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,798評論 1 290
  • 那天奋渔,我揣著相機與錄音镊逝,去河邊找鬼壮啊。 笑死嫉鲸,一個胖子當著我的面吹牛,可吹牛的內容都是我干的歹啼。 我是一名探鬼主播玄渗,決...
    沈念sama閱讀 38,941評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼座菠,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了藤树?” 一聲冷哼從身側響起浴滴,我...
    開封第一講書人閱讀 37,704評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎岁钓,沒想到半個月后升略,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,152評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡屡限,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,494評論 2 327
  • 正文 我和宋清朗相戀三年品嚣,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片钧大。...
    茶點故事閱讀 38,629評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡翰撑,死狀恐怖,靈堂內的尸體忽然破棺而出啊央,到底是詐尸還是另有隱情眶诈,我是刑警寧澤,帶...
    沈念sama閱讀 34,295評論 4 329
  • 正文 年R本政府宣布瓜饥,位于F島的核電站逝撬,受9級特大地震影響,放射性物質發(fā)生泄漏压固。R本人自食惡果不足惜球拦,卻給世界環(huán)境...
    茶點故事閱讀 39,901評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望帐我。 院中可真熱鬧坎炼,春花似錦、人聲如沸拦键。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽芬为。三九已至萄金,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間媚朦,已是汗流浹背氧敢。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留询张,地道東北人孙乖。 一個月前我還...
    沈念sama閱讀 46,333評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親唯袄。 傳聞我的和親對象是個殘疾皇子弯屈,可洞房花燭夜當晚...
    茶點故事閱讀 43,499評論 2 348

推薦閱讀更多精彩內容