1

我剛剛開始研究圖像識別項目,並希望爲其添加神經網絡。現在我可以將圖像轉換爲重要點位置列表。我想將這個列表傳遞給ANN。 現在我讀了幾篇關於人工神經網絡的文章,並且總是看到輸入層是不變的。問題在於點的數量可能因操作輸入圖像而異。是否有與此任務相對應的特殊類型的ANN? (很抱歉,如果英語不好:)神經網絡 - 不同的輸入圖層

+0

我會盡力解釋我的任務:我有我需要分類的對象的照片。我知道只有使用照片上的路口位置(重要點),我可以將對象分隔到不同的班級。問題在於不同的對象可能有不同的點數。所以輸入數組的長度可能因圖片上的對象而異。現在我正在考慮解決問題的方法:自己獲得一系列職位,然後將其傳遞給ANN,或使用CNN(查找有關這些職位的更多信息)。可能有其他方法嗎? – antohha

+0

@ user3155701 我打算把整個圖像傳遞給CNN而不是點陣列:P類似於這裏所示[image](http://torch.cogbits.com/doc/tutorials_supervised/convnet.png) – antohha

回答

0

我可能會誤會你在圖像識別

神經網絡

使用神經網絡進行圖像識別的首選方法是通過從餵養的像素值圖像,並讓神經網絡自己決定圖像中哪些特徵很重要。這些特徵將被存儲在神經網絡的權重中。因此,您只應從圖像中提供像素數據,並讓網絡對輸入數據進行分類。

一個例子

enter image description here

+0

問題是圖像本身太大(500x500px或更多),所以這個問題太慢了。我認爲CNN可能解決這個任務? – antohha

+0

CNN確實是一種受歡迎的圖像識別網絡結構。但是這些網絡也需要你的輸入尺寸/長度一致。我從來沒有實現過CNN網絡,所以我不能給你任何提示。我可以說的是:CNN結構是受歡迎的,因爲它訓練/學習圖像的特徵的速度更快。通過預先計算功能,您可以強制自己執行大量處理任何一種方式。 – jorgenkg

0

簡單地說,你可以輸入零到有沒有數據的神經元。

請注意,零輸入不會改變神經元的權重,因此它對學習沒有任何影響。

1

如果可能的圖像大小有限(即500x500,640x480和1200x1000-3種可能性),那麼您可以爲這些可能大小類別中的每一種設置自動編碼器,以將圖像轉換爲最小尺寸(即500x500 )。 Autoencoder應該能夠使用本地相關性來提供更加簡潔的圖像表示。請注意,CNN基本上是一樣的,但它並不能完全解決您輸入大小不一的問題。即使在CNN,你也必須有一個固定數量的輸入節點。

一旦你有一個較小的圖像表示,你可以自由地使用任何方法,因爲通過編碼器後的所有圖像具有相同的尺寸。這種方法可能存在的缺點是您需要爲所有大小的類別提供足夠的訓練樣本來訓練編碼器。

或者你也可以做相反的事情:取所有較小的圖像大小,並根據需要在每個軸上覆制像素,並將它們轉換爲最大的圖像尺寸。例如,如果最大尺寸爲1000x1000,並且您獲得500x500圖片,則只需複製其行和列即可獲得1000x1000版本。然後使用一個對這個本地相關/冗餘不變的方法。