如果把自己的眼鏡放在鏡子前拍一張照片, 如何直接從圖片中計算出眼鏡跟水平線的角度? 前提是我的眼鏡是可能的任何款式, 深度學習有什麼可用的模型嗎? 是我任意旋轉角度拍圖片作為training database的input,然後把眼鏡與水平線的夾角記下來作為我training database的label, 這樣訓練深度模型嗎?

非常感謝大家的瀏覽, 如能留下寶貴的意見更是感激不盡, 祝每天開心。^_^


我覺得傳統方法可能就可以搞。先分析所有眼鏡可能會共有的特徵,比如眼鏡都有兩個鏡片,眼鏡有對稱的結構,眼鏡的鏡框通常都會有顏色吧,提取出眼鏡骨架線,拿統計形狀模型的方法,去做匹配。

深度學習比較簡單粗暴,建議當標記點的任務做,選眼鏡的左右兩個活動關節做特徵點。兩點的連線就是水平線,這樣任務本身比較直觀,更好學習,不容易過擬合。


這裡列了很多遙感旋轉檢測的方法,可能對你有幫助:https://github.com/SJTU-Thinklab-Det/DOTA-DOAI


如果要回歸帶角度的bbox可以用經典網路yolo等加一個角度的損失函數


在做2維位姿檢測,也就是通過網路獲得中心點加長寬加旋轉角,用的方法叫drbox的方法,不清楚你是隻要2維的信息還是要3維的


如果直接想計算角度應該比較難,但應該可以回歸眼鏡的特徵點。

在製作數據集的時候標註鏡片中心,鼻託,角點這樣的位置作為特徵點,然後訓練的時候回歸這些位置,再計算角度就比較方便了。


其實目前深度學習中有一項叫Pose Estimation (是針對物體的位姿而不是人的姿勢) 可以檢測出物體的方向

其中有一種基於單目攝像頭的方法叫Keypoint Regression 首先根據訓練集中標記好的關鍵點來檢測輸入圖片中的關鍵點,接下來求解PnP問題,解算物體位姿。可以參考一下浙大的PVnet。

但是目前這種方法目前都是在已有訓練集的基礎上進行訓練的 例如YCB 訓練集。眼鏡的話恐怕就要自己標記關鍵點 自己建3D模型製作數據集了。


是可以直接回歸角度的,也可以當成一個分類模型,只不過做分類模型,需要5度或者10度一個類別。數據足夠的話,效果還是挺好的


找特徵點,然後根據相關知識確定方向。

純粹利用深度學習很難直接確定角度。

如果想直接確定確定方向,可以考慮二次學習


可以得到眼睛的框,根據框的邊來計算角度,不過照片上水平方向怎麼確定...

不太明白你的應用場景和目的,並不一定所有應用都適合深度學習來解決,有些方面傳統方法更有效果.


可以試試east演算法的quad方式去回歸4個點,標註是按照固定方式標註,理論上理論上精度應該夠用


考慮關鍵點檢測結合PNP?但是款式不同還得考慮柔性的幾何變化?感覺要做到精度很高難度不小的。


測量還得要傳統方法做,深度學習不好做


推薦閱讀:
相關文章