1. 一個有趣的案例 | 頁面扭曲矯正

        共 2476字,需瀏覽 5分鐘

         ·

        2021-07-28 00:11

        點擊上方小白學視覺”,選擇加"星標"或“置頂

        重磅干貨,第一時間送達

        本文轉(zhuǎn)自:AI算法與圖像處理

        前言

        今天要分享的內(nèi)容是關(guān)于頁面扭曲矯正的內(nèi)容,為了讓大家有一個相關(guān)的概念,下面先預覽一下效果圖



        頁面扭曲矯正的原理


        作者寫這篇文章的目的也很有意思,因為 作者的妻子是一個老師,她的學生經(jīng)常要發(fā)一些圖片的作業(yè)給她,但是難免由于拍照技術(shù)和條件等各種原因,導致批改作業(yè)的難度提升,因此作者為了他的老婆,做出來了這一套方案。(愛的魔力)



        對于一些經(jīng)典的文本矯正的思路(例如Leptonica dewarping method 和 the CTM method)將問題分解為:

        1. 將文本分成幾行線

        2.  找到使得線平行和水平的映射或坐標變換


        本文作者同樣采用了類似的思路,構(gòu)建了一個參數(shù)模型用于頁面(文本)的矯正,模型主要考慮的參數(shù):

        • 頁面在三維空間中的旋轉(zhuǎn)向量  r 和平移向量 t

        • 指定頁面表面的兩個曲率   α  and  β

        • 頁面上n個水平跨度的垂直偏移

        • 對于每個跨度,水平跨度中 m個點的水平偏移量


        對于上面的一些參數(shù),本人的理解是頁面扭曲存在這旋轉(zhuǎn)和偏移的變換,因為把文本內(nèi)容分成幾行,因此將每一行文本看成是一條曲線,這里假設(shè)扭曲后變成三次樣條曲線,由兩個系數(shù) a 和 b 控制。垂直偏移是指分割后的每行之間的距離,水平偏移是指對每條線上設(shè)置點,用于后續(xù)的矯正變換處理。

        (個人理解,可能與原文存在一點的偏差)


        接下來的操作就非常牛了,作者通過對頁面進行模擬,設(shè)置不同參數(shù)用于觀察其中的規(guī)律


        最后作者發(fā)現(xiàn)當設(shè)置的參數(shù)固定后,頁面上的每個關(guān)鍵點都能在圖片的平面內(nèi)找到確定的對應(yīng)點。



        紅色的是文本上檢測到的關(guān)鍵點,藍色的是通過模型的重投影的點。左圖的藍色點都是共線的(假設(shè)一開始文本是直線的),而右圖是將確定頁面的姿態(tài)/形狀,使得藍色點幾乎上紅色點上。

        實現(xiàn)的細節(jié)


        上面是大致的實現(xiàn)原理,接下來是作者實現(xiàn)功能的主要步驟:

        1、獲取頁面的邊界。這里并不是采用整幅圖去處理,而是非常的巧妙采用內(nèi)部文本內(nèi)容以及文本與邊界大致距離去確定頁面的邊界。


        2、檢測文本的輪廓。通過自適應(yīng)閾值——> 膨脹+腐蝕——> 連通區(qū)域分析+PCA來近似文本


        3、將文本組成跨度


        4、樣本跨度。在每個跨度上生成代表性點。


        5、創(chuàng)建初始參數(shù)估計。實現(xiàn)投影到圖片平面內(nèi)。


        6、優(yōu)化!使重投影的誤差變小


        7、重新映射圖片和閾值




        總結(jié)

        該項目是之前用到的,今天特意分享給大家,百度搜索出來的相關(guān)內(nèi)容很少,因為個人覺得分享出來還是蠻有意義的,對于內(nèi)容的理解由于本人水平有限,可能會存在一定的偏差,但是真的是花了挺大功夫來解讀的。


        使用起來并不難,但是由于作者的假設(shè),對于并非這情況的文本,以及變形過大的矯正效果并不是非常理想。創(chuàng)作不易,希望能點個在看,轉(zhuǎn)發(fā)一手,由于缺少留言功能,因此,只能通過后臺的數(shù)據(jù)反饋才知道自己分享的內(nèi)容是否真的有幫助到大家,大家的每個閱讀在看和轉(zhuǎn)發(fā),我都非常的感謝。


        下載1:OpenCV-Contrib擴展模塊中文版教程
        在「小白學視覺」公眾號后臺回復:擴展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴展模塊教程中文版,涵蓋擴展模塊安裝、SFM算法、立體視覺、目標跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。

        下載2:Python視覺實戰(zhàn)項目52講
        小白學視覺公眾號后臺回復:Python視覺實戰(zhàn)項目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學校計算機視覺。

        下載3:OpenCV實戰(zhàn)項目20講
        小白學視覺公眾號后臺回復:OpenCV實戰(zhàn)項目20講即可下載含有20個基于OpenCV實現(xiàn)20個實戰(zhàn)項目,實現(xiàn)OpenCV學習進階。

        交流群


        歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學影像、GAN算法競賽等微信群(以后會逐漸細分),請掃描下面微信號加群,備注:”昵稱+學校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~


        瀏覽 56
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. 久久午夜无码鲁丝 | ww午夜 | 黄网一区 | 亚洲视频欧美色图 | 欧美一级一区二区A片免费下载 |