拍照搜题
從技術上來說,這類軟件主要有兩種方案:“以圖搜圖”和“OCR+文字搜索”
①以圖搜圖的方法就是把用戶拍攝的圖片和已有的圖片題庫做匹配。這和我們平常通過上傳圖片的方式在搜索引擎中找與之相似的圖片其實非常相似。只是在圖片匹配的過程中有“計算機視覺+機器學習”和“深度學習”這兩種方式可選。
②和以圖搜圖的方法相比,“OCR+文字搜索”的方式就復雜一些。用戶在拍照后,軟件首選需要把其中的字符識別出來,然后在題庫中進行檢索才能得出結果。和上面圖片匹配過程類似的是,在文字識別的過程中也有兩種技術方案可選:“傳統OCR”和“深度學習”。
雖然這兩個流程看上去簡潔易懂,但在背后計算機要做的事情遠比這些復雜。像PhotoMath,每一個處理過程都要經過圖像輸入、預處理、校正、噪聲去除等多個階段。而小猿搜題一次正常的“做題”過程也至少要經過預處理、切分、識別、搜索和輔助策略5個步驟。
當軟件接受到手機拍攝的圖片之后,首先要做異常檢測,比如圖片是否模糊、是否需要旋轉圖像等等。經過這個過程之后,再進行二值化,并對字符及公司進行切分。
經過二值化之后,整個圖像會呈現出明顯的黑白效果,這樣一來,圖像就變得簡單了,而且數據量也減小了,還能凸顯出感興趣的目標的輪廓。接著自然也就可以把單個字符切分出來了。
把字符切分出來之后,軟件還是“認不出”這個字符是什么的,所以接下來還要識別這些字符。這時就需要光學字符識別技術(OCR)和深度學習技術上場了。
在識別這個過程中,PhotoMath主要使用了OCR技術,而小猿搜題則主要使用了深度學習技術。不過,由于這兩種方法都不能保證100%識別正確,所以中間可能還需要插入一個糾錯過程,像“1和l”、“好圖所示和如圖所示”、“入和人”這些形式非常相近的字符機器也很容易讀錯。這時候利用語言模型進行糾錯就顯得比較有必要了。
在做完識別之后,它還要去題庫里搜索對應的題目。在這個過程中,計算機又要用到分詞、排序等搜索過程中需要用到的技術。
OCR(Optical Character Recognition,光學字符識別),自動研究光學設備產生的圖片檢查紙上的字符,通過檢測暗、亮的模式確定其形狀,實現計算機對文字的閱讀。
OCR(Optical Character Recognition,光學字符識別),自動研究光學設備產生的圖片檢查紙上的字符,通過檢測暗、亮的模式確定其形狀,實現計算機對文字的閱讀。
總結
- 上一篇: 使用Python连接数据库的脚本
- 下一篇: 高新技术企业都需要准备哪些资料