MATLAB入門系列——讀取圖片及神經網絡AlexNet分類

MATLAB入門系列——讀取圖片及簡單處理

剛開始先來一個最簡單的圖像讀取:
環境:MATLAB(最近幾年哪一個版本就ok啦)
讀取和顯示圖像
讀取圖像語句:
img1=imread(“index.jpg”);
(注意這一句加上分號)
顯示圖像語句
imshow(img1)
(這一句不要加分號,一定不要加,不加代表顯示加上代表執行但不顯示)
效果呈現:
在這裏插入圖片描述
然後我們對圖像做一個分類,按道理分類算法是複雜的,小白絕對不可能自己寫出來,但是matlab的開源性使得我們可以調用大量其他工程師的成果,這就是所謂的站在巨人的肩膀上。這裏先簡單調用一下著名的神經網絡AlexNet(這個神經網絡想要進一步瞭解的自行百科哈 )

加載著名的神經網絡AlexNet
deepnet(變量名)=alexnet
但是輸入這一行代碼,馬上就會報錯:
在這裏插入圖片描述
好像是沒有包唉!怎麼辦呢?別急,這不後面有提示嗎,點擊後面的附加功能訪問器安裝一下這個包就好。日後不用的時候手動刪除就好(不過我覺得小白也不會刪的)
安裝完成後再次執行代碼,完成神經網絡的加載;
使用分類器函數做一個預測(具體怎麼分類也請自行百科喔,關於這方面的研究還是很多的)
pred1=classify(deepnet,img1)
這個時候我們可能又看到錯誤了:
在這裏插入圖片描述
這個是意思是輸入圖片的大小不對,必須是227227像素3通道的,這個時候我們可以使用ps或者其他圖像處理工具改一下大小。
完成以後,再次執行
我們發現可能還會出現尺寸不對的情況,WHY???我們可以看一下工作區,正確的應該是這個樣子的
在這裏插入圖片描述
如果發現你的img1尺寸不是227
227,這是因爲即使改了圖片大小,但是在已經加載到的變量中並沒有進行更改,你需要做的是刪除工作區的變量,重新加載圖像,最後執行 pred語句
可以得到圖像處理結果
在這裏插入圖片描述
這樣就成功了,可以看到給出的分類結果是papillon
在這裏插入圖片描述
點擊其中的categorical,可以看到這個神經網絡categorical的含義。

發佈了37 篇原創文章 · 獲贊 1806 · 訪問量 25萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章