天天看點

關于圖像識别,我們是否可以用一種程式設計語言來描述?

今天在整理照片時,發現有張圖檔上拍了一個表格,手動将内容抄寫下來不太省力,于是想如果有一個軟體可以抓取圖像中的表格文字該多好。。。

從頭設計一套軟體完成這個工作量有點大,想到已經有了一些手寫體識别的應用,隻要在該技術基礎上再增加一層接口,其實就能完成上述任務。

該接口要靈活,能夠适應各種應用的文字識别,比如漢字手寫體,英文手寫體,宋體,以及上面的表格内容識别。因為一幅圖像中的内容是千差萬别的,我們可以借助一種圖像描述原語(image description primitives, idp)來完成這些内容的差別。

假設有如下idp:

def "table"  p1;   //表示該圖像中有一個表格,聲明為對象p1

set origin(x0,y0);     //表示表格的左上角像素坐标

set end(x1,y1);        //表示表格的右下角像素坐标

p1.cols = [5-10];       //表示該表格的列數可能在5~10列之間

p1.rows = [100-200];    //行數在100~200行之間

table tb = p1.getcontent();     //建立表格對象,從p1對象中抽取内容,以字元串形式存入tb中

//列印輸出字元串

for(int i = 0;i<tb.rows;i++)

{

    for(int j = 0;j<tb.cols;j++)

    {

         printf("%s\t",tb[i][j]);

    }

    printf("\r\n");

}

end p1;       //銷毀對象

除了表格對象,我們還可建立純文字對象,手寫體對象,英文手寫體對象等,識别原語都封裝到p1.getcontent()中。

隻是一時想到的,不知有沒有價值。本人隻是對文字識别感興趣,沒有相關經驗,一家之言,歡迎讨論。