首先可以非常明確的告訴你的一點是,傳統的影象處理演算法肯定是很難處理這類問題的。
下面我們結合kaggle上面的一個垃圾分類來說明一下如何處理這類問題,資料一共分為六類:cardboard、glass、metal、paper、plastic、trash。
kaggle比賽地址:https://www.kaggle.com/asdasdasasdas/garbage-classification
其實傳統的影象處理演算法在解決這類問題的思路是,首先透過找出資料之間的特徵,然後利用圖片的SIFT、LBP、顏色、紋理等特徵人工設計組合特徵,這一步被稱為特徵工程,也是最難的一步,最終分類效果的好壞這步起到了決定性的作用。在沒有深度學習之前,比賽結果的最終排名就看你的特徵工程做的怎麼樣。
透過設計好的特徵工程提取出來的影象特徵,利用SVM、XGBOOST、決策樹、隨機森林等機器學習演算法來訓練一個模型。
我們就以glass這類資料為例,看看如何使用傳統影象處理演算法來處理
看了上面的資料之後,glass的形狀、顏色、紋理等特徵複雜多樣很難設計出一個統一的特徵來判斷它們屬於glass這類,這也是為什麼說傳統影象處理演算法的特徵工程難的原因。
深度學習處理這類問題相對傳統影象處理演算法來說就要簡單些了,透過設計神經網路利用CNN來提取影象的特徵進行分類就可以了,避免了手工設計特徵,這也是深度學習的優勢所在。在使用神經網路構建分類模型的時候,不用去考慮一個大類資料中涵蓋了多少類小類的問題,只要你的資料足夠就行。
比如上面的glass類別中,包含了酒杯、酒瓶、水果罐頭瓶等,我們只需要將它們統一為glass類就行,只要你的訓練資料中包含了這型別的資料,在預測的時候也會將它們分為一個類別。
針對你上面的問題,垃圾可能是塑膠袋、剩菜剩飯或是建築垃圾等問題。首先,你需要明確的目的是什麼,是做一個區分垃圾和不是垃圾的模型嗎?還是做一個垃圾的細分類模型用來區分塑膠袋、剩菜剩飯、建築垃圾的模型呢?
如果是前者,你需要收集包含垃圾的圖片和不包含垃圾的圖片,不用去細分。如果是後面,你就要分三大類去收集圖片,把包含塑膠袋的分為一類,包含剩菜剩飯的分為一類,包含建築垃圾的分為一類。
最後,決定深度學習模型效果的主要是資料,資料越多種類越全越豐富,效果越好。
首先可以非常明確的告訴你的一點是,傳統的影象處理演算法肯定是很難處理這類問題的。
下面我們結合kaggle上面的一個垃圾分類來說明一下如何處理這類問題,資料一共分為六類:cardboard、glass、metal、paper、plastic、trash。
kaggle比賽地址:https://www.kaggle.com/asdasdasasdas/garbage-classification
為什麼說傳統的影象處理演算法無法解決這類問題?其實傳統的影象處理演算法在解決這類問題的思路是,首先透過找出資料之間的特徵,然後利用圖片的SIFT、LBP、顏色、紋理等特徵人工設計組合特徵,這一步被稱為特徵工程,也是最難的一步,最終分類效果的好壞這步起到了決定性的作用。在沒有深度學習之前,比賽結果的最終排名就看你的特徵工程做的怎麼樣。
透過設計好的特徵工程提取出來的影象特徵,利用SVM、XGBOOST、決策樹、隨機森林等機器學習演算法來訓練一個模型。
我們就以glass這類資料為例,看看如何使用傳統影象處理演算法來處理
看了上面的資料之後,glass的形狀、顏色、紋理等特徵複雜多樣很難設計出一個統一的特徵來判斷它們屬於glass這類,這也是為什麼說傳統影象處理演算法的特徵工程難的原因。
深度學習如何來處理這類問題深度學習處理這類問題相對傳統影象處理演算法來說就要簡單些了,透過設計神經網路利用CNN來提取影象的特徵進行分類就可以了,避免了手工設計特徵,這也是深度學習的優勢所在。在使用神經網路構建分類模型的時候,不用去考慮一個大類資料中涵蓋了多少類小類的問題,只要你的資料足夠就行。
比如上面的glass類別中,包含了酒杯、酒瓶、水果罐頭瓶等,我們只需要將它們統一為glass類就行,只要你的訓練資料中包含了這型別的資料,在預測的時候也會將它們分為一個類別。
針對你上面的問題,垃圾可能是塑膠袋、剩菜剩飯或是建築垃圾等問題。首先,你需要明確的目的是什麼,是做一個區分垃圾和不是垃圾的模型嗎?還是做一個垃圾的細分類模型用來區分塑膠袋、剩菜剩飯、建築垃圾的模型呢?
如果是前者,你需要收集包含垃圾的圖片和不包含垃圾的圖片,不用去細分。如果是後面,你就要分三大類去收集圖片,把包含塑膠袋的分為一類,包含剩菜剩飯的分為一類,包含建築垃圾的分為一類。
最後,決定深度學習模型效果的主要是資料,資料越多種類越全越豐富,效果越好。