新四季網

一種掃描紙質海圖水深點自動矢量化及信息提取的改進方法與流程

2023-06-05 16:19:46 1


本發明涉及河口海岸科學、港口及航道工程等應用領域,具體地說是一種掃描紙質海圖水深點自動矢量化及信息提取的改進方法。



背景技術:

海圖是精確測繪海洋水域和沿岸地物信息的專門地圖形式,主要內容包括:岸線、島嶼、礁石、水深、航標和無線電導航臺等,是航海必不可少的參考數據。同時,也是河口海岸科學研究,海岸工程、港口及航道工程應用獲取基礎數據的重要數據源,在航海、河口海岸及海洋科學研究領域有著廣泛的應用。長期以來,人們只能夠從有關部門購買紙質海圖,再掃描成數位化的圖像通過手工矢量化的方式將其轉變為便於計算機處理的形式加以應用。儘管近些年已經可以直接獲得矢量格式的海圖,但歷史上積存的大量紙質海圖對於認識近岸海洋環境的發展演變是不可替代的數據源,在科研和工程應用中具有重要意義。每張海圖上都有數以千計的點要素、線要素信息及大量的其它信息,常規的手工矢量化方式需要通過不斷重複性的勞動來完成,工作極其枯燥乏味,而且強度大、效率低、易出錯、一致性差,極大地制約了紙質海圖在科研和工程領域的應用。因此,迫切需要提高掃描紙質海圖矢量化的效率。



技術實現要素:

本發明根據海圖製圖規範,提出一種掃描紙質海圖水深點自動矢量化及信息提取的改進方法,實現了海圖水深點要素自動精確定位和矢量化、水深數據自動提取的功能,以提升紙質海圖矢量化的效率,挖掘歷史海圖數據的價值,為科研和工程應用提供便利。

本發明的技術方案是:

一種掃描紙質海圖水深點自動矢量化及信息提取的改進方法,它包括以下步驟:

s1、掃描紙質海圖;

s2、對掃描的海圖圖像文件進行幾何校正(海圖屬於地理數據的一種,而地理數據要與實際空間位置對應起來才有意義,利用掃描儀掃描進電腦之後僅僅是一個普通的圖片,因此在使用之前需要對其進行幾何校正);創建點矢量文件,文件參考坐標系與已校正的掃描海圖圖像文件一致;

s3、框選海圖圖像中任一包含單個或多個水深點的圖像區域,並獲取框選的圖像區域左上角的空間坐標(x,y)及x、y方向的像元大小sx、sy;

s4、讀取框選區域的圖像數據,識別區域中的數字,將識別結果中多個數字序列合併為1個數字序列numstr,該數字序列中有n個數字,m為序列中的數字索引,m=0,...,n-1,獲得數字序列以及數字序列中各數字上邊到框頂邊的頂邊距離top、下邊到框頂邊的底邊距離bottom、左邊到框左邊的左邊距離left、右邊到框左邊的右邊距離right;

s5、聲明字符變量depstr用來存放提取的單個水深點數字序列,並將數字序列numstr中第一個數字即numstr0賦值給depstr,同時獲取其左上角的坐標位置(x,y);(depstr是一個臨時變量,用來存儲通過判斷從數字序列中分離得到的單個水深點讀數,每得到一個完整的水深點讀數,depstr就被轉換為數值型並存入一個用來存儲所選全部水深點讀數的數組變量,然後將被重新賦值用來存儲下一個水深點讀數);

s6、判斷數字序列numstr是否只包含一個數字:

如果是一個數字,則僅有一個水深點且數值為1位整數,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h;

如果包含多於一個數字,則依次將numstrm-1與numstrm的空間位置進行比較,m=1,...,n-1,直到所有數字比較完畢結束,得到所有水深點的正確讀數,獲取其整數數字的寬度w和高度h;

s7、依次計算各個水深點的空間坐標;

s8、根據所獲取的水深點空間坐標在步驟s2創建的點矢量文件中生成點要素並將水深數據寫入屬性表,在圖上顯示獲取的水深讀數和空間位置以便判斷正確與否;

s9、目視判斷所獲取的水深點讀數和空間位置是否正確,若不正確,進行修正,若正確,則重複s2至s9步,完成整幅海圖的矢量化。

進一步地,步驟s2中,採用gis軟體工具進行幾何校正,如arcgis。

進一步地,步驟s4中,採用ocr引擎識別所選圖像區域中的數字。

進一步地,步驟s6中,空間位置比較步驟具體為:

如果numstrm-1與numstrm的左邊距離left滿足下述情況,則進行相應處理:

c1、abs(leftm-leftm-1)<20且abs(topm-topm-1)<5,則numstrm為該水深點的一個整數位數字,將numstrm連接到depstr:(字符串連接,例如,字符串變量str現在=「1」,把一個新的字符串「6」連接到str,則str就變成了「16」;再把一個新的字符串「3」連接到str,則str就變成了「163」。因為選了多個水深點,ocr識別後結果可能比較亂,一個水深點的數可能識別成兩個對象,也可能多個水深點的數字識別成一個對象,所以首先把識別出的所有數字合成為一個水深點序列,然後通過這裡的算法來把各個水深點正確分開。這裡depstr是用來存放分開後的單個水深點數值的變量。)

進而,判斷numstrm是否為numstr的最後一個數字,即判斷m=n-1是否成立,如果成立,則depstr為該水深點的完整數字序列,且無小數位,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h,比較結束,否則繼續比較;

c2、abs(leftm-leftm-1)<20且5<abs(topm-topm-1)<15,則numstrm為小數位,將numstrm連接到depstr,depstr作為該水深點的完整數字序列,將depstr轉變為數值型並除以10即得到正確的水深點讀數,同時獲取其整數位寬度w和高度h;

判斷m<n-1是否成立,如果成立,則對depstr重新賦值為numstrm+1,並令m=m+1,同時獲取numstrm+1的坐標位置,否則繼續比較;

進而,判斷numstrm是否為numstr的最後一個數字,即判斷m=n-1是否成立,如果成立,則depstr為該水深點的完整數字序列且數值為1位整數,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h,比較結束,否則繼續比較;

c3、如果不滿足c1、c2的兩個初始判斷條件,則depstr為該水深點的完整數字序列,且無小數位,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h,獲取numstrm的坐標位置,對depstr重新賦值為numstrm;

進而,判斷numstrm是否為numstr的最後一個數字,即判斷m=n-1是否成立,如果成立,則depstr為該水深點的完整數字序列,且無小數位,將depstr轉變為數值型即得到正確的水深點讀數,獲取其寬度w和高度h,比較結束,否則繼續比較。

進一步地,獲取寬度w和高度h時,採用下述步驟:

若存在小數位,寬度w通過數字序列中倒數第二個數字的右邊距離right減去第一個數字的左邊距離left得到寬度w,高度h通過排除數字序列最後一個數字之後的全部數字中最大底邊距離bottom減去最小頂邊距離top得到;

若不存在小數位,寬度w通過數字序列中最後一個數字的右邊距離right減去第一個數字的左邊距離left得到,高度h通過數字序列中所有數字中最大底邊距離bottom減去最小頂邊距離top得到。

進一步地,步驟s7具體包括:

s7.1、首先根據數字識別結果獲取數字序列第一個數字左上角在所選圖像區域中的坐標(x,y);

s7.2、採用下述公式計算整數位中心點在整幅海圖中的坐標(cx,cy),即水深點的空間坐標:

cx=x+(x+w/2)×sx

cy=y-(y+h/2)×sy

其中:x,y表示框選的圖像區域左上角的空間坐標;x,y表示數字序列第一個數字左上角在所選圖像區域中的坐標,sx、sy表示x、y方向的像元大小,w表示水深點數值整數位寬度,h表示水深點數值整數位高度。

進一步地,步驟s2中,事先依照幾何校正後的海圖數字格式創建的0至9十個數字模板圖像。

進一步地,步驟s9中,修正步驟為:

s9.1、用戶在地圖窗口中點擊待修正的水深點,獲取用戶點擊位置的空間坐標,比較用戶點擊位置的空間坐標與所有水深點的空間坐標之間的距離,距離最小者為待修正的水深點;

s9.2、操作人員手動錄入水深點正確讀數,根據所錄入數字整數位,從0至9數字模板中讀取相應的數字,若整數位只有1位只需讀取其中一個數字模板圖像,否則需要讀取相應位數的數字模板圖像,併合成為一個圖像,獲取整數位的寬度w和高度h;

s9.3、分別對所選圖像區域和前述步驟獲取的數字模板圖像執行傅立葉變換得到各自的頻譜圖;

s9.4、對兩個頻譜圖執行相關操作(correlation),然後對相關操作(correlation)所得到的圖像執行傅立葉逆變換,在用戶點擊位置附近搜索極大值點(x,y)即為待修正水深點整數位左上角在所選圖像區域中的坐標(x,y);

s9.5、採用下述公式計算整數位中心點在整幅海圖中的坐標(cx,cy),即水深點的空間坐標:

cx=x+(x+w/2)×sx

cy=y-(y+h/2)×sy

其中:x,y表示框選的圖像區域左上角的空間坐標;x,y表示數字序列第一個數字左上角在所選圖像區域中的坐標,sx、sy表示x、y方向的像元大小,w表示水深點數值整數位寬度,h表示水深點數值整數位高度;

s9.6、根據計算得到的(cx,cy)和操作人員錄入的水深點讀數,修改點矢量文件中對應的記錄。

本發明的有益效果:

本發明能夠大幅度提高海圖水深點矢量化工作的效率。對於一幅1:150,000的海圖,一個熟練的矢量化操作員通常需要半天至一天的不間斷工作方能完成全部水深點的矢量化,利用本方法僅需要30分鐘至1小時即可實現,顯著提高了識別的效率。

附圖說明

圖1是本發明的流程圖。

圖2是局部海圖。

其中:數字即水深點,點的位置在整數位的中心,有多於1位的整數位,也有不帶小數位的,所有小數位只有1位。

圖3是數字在框選圖像區域中的位置示意圖。

圖4是同時獲取多個水深點讀數和坐標算法流程圖。

其中:numstr為數字序列,numstrm為數字序列中第m個數字,leftm、topm分別為第m個數字的left和top數值;depstr為單個水深點的數字收集器,dep為數值型水深點變量、w、h分別為單個水深點整數位的寬度和高度,coord為水深點左上角坐標。abs為絕對值操作:depstr+=numstr_為連接字符串操作:depstr→dep我字符串轉數值型操作。

具體實施方式

下面結合附圖和實施例對本發明作進一步的說明。

如圖1所示,一種掃描紙質海圖水深點自動矢量化及信息提取的改進方法,它包括以下步驟:

s1、掃描紙質海圖;

s2、對掃描的海圖圖像文件進行幾何校正(採用gis軟體工具進行幾何校正,如arcgis)(海圖屬於地理數據的一種,而地理數據要與實際空間位置對應起來才有意義,利用掃描儀掃描進電腦之後僅僅是一個普通的圖片,因此在使用之前需要對其進行幾何校正);創建點矢量文件,文件參考坐標系與已校正的掃描海圖圖像文件一致,事先依照幾何校正後的海圖數字格式創建的0至9十個數字模板圖像。

s3、框選海圖圖像中任一包含單個或多個水深點的圖像區域,並獲取框選的圖像區域左上角的空間坐標(x,y)及x、y方向的像元大小sx、sy;

s4、讀取框選區域的圖像數據,識別區域中的數字,將識別結果中多個數字序列合併為1個數字序列numstr,該數字序列中有n個數字,m為序列中的數字索引,m=0,...,n-1,獲得數字序列以及數字序列中各數字上邊到框頂邊的頂邊距離top、下邊到框頂邊的底邊距離bottom、左邊到框左邊的左邊距離left、右邊到框左邊的右邊距離right;

s5、聲明字符變量depstr用來存放提取的單個水深點數字序列,並將數字序列numstr中第一個數字即numstr0賦值給depstr,同時獲取其左上角的坐標位置(x,y);

s6、判斷數字序列numstr是否只包含一個數字:

如果是一個數字,則僅有一個水深點且數值為1位整數,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h;

如果包含多於一個數字,則依次將numstrm-1與numstrm的空間位置進行比較,m=1,...,n-1,直到所有數字比較完畢結束,得到所有水深點的正確讀數,獲取其整數數字的寬度w和高度h,採用下述步驟:

若存在小數位,寬度w通過數字序列中倒數第二個數字的右邊距離right減去第一個數字的左邊距離left得到寬度w,高度h通過排除數字序列最後一個數字之後的全部數字中最大底邊距離bottom減去最小頂邊距離top得到;

若不存在小數位,寬度w通過數字序列中最後一個數字的右邊距離right減去第一個數字的左邊距離left得到,高度h通過數字序列中所有數字中最大底邊距離bottom減去最小頂邊距離top得到。

其中,空間位置比較步驟具體為:

如果numstrm-1與numstrm的左邊距離left滿足下述情況,則進行相應處理:

c1、abs(leftm-leftm-1)<20且abs(topm-topm-1)<5,則numstrm為該水深點的一個整數位數字,將numstrm連接到depstr:(字符串連接,例如,字符串變量str現在=「1」,把一個新的字符串「6」連接到str,則str就變成了「16」;再把一個新的字符串「3」連接到str,則str就變成了「163」。因為選了多個水深點,ocr識別後結果可能比較亂,一個水深點的數可能識別成兩個對象,有可能多個水深點的數字識別成一個對象,所以首先把識別出的所有數字合成為一個水深點序列,然後通過這裡的算法來把各個水深點正確分開。這裡depstr是用來存放分開後的單個水深點數值的變量。)

進而,判斷numstrm是否為numstr的最後一個數字,即判斷m=n-1是否成立,如果成立,則depstr為該水深點的完整數字序列,且無小數位,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h,比較結束,否則繼續比較;

c2、abs(leftm-leftm-1)<20且5<abs(topm-topm-1)<15,則numstrm為小數位,將numstrm連接到depstr,depstr作為該水深點的完整數字序列,將depstr轉變為數值型並除以10即得到正確的水深點讀數,同時獲取其整數位寬度w和高度h;

判斷m<n-1是否成立,如果成立,則對depstr重新賦值為numstrm+1,並令m=m+1,同時獲取numstrm+1的坐標位置,否則繼續比較;

進而,判斷numstrm是否為numstr的最後一個數字,即判斷m=n-1是否成立,如果成立,則depstr為該水深點的完整數字序列且數值為1位整數,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h,比較結束,否則繼續比較;

c3、如果不滿足c1、c2的兩個初始判斷條件,則depstr為該水深點的完整數字序列,且無小數位,將depstr轉變為數值型即得到正確的水深點讀數,同時獲取其寬度w和高度h,獲取numstrm的坐標位置,對depstr重新賦值為numstrm;(depstr是一個臨時變量,用來存儲通過判斷從數字序列中分離得到的單個水深點讀數,每得到一個完整的水深點讀數,depstr就被轉換為數值型並存入一個用來存儲所選全部水深點讀數的數組變量,然後將被重新賦值用來存儲下一個水深點讀數。)

進而,判斷numstrm是否為numstr的最後一個數字,即判斷m=n-1是否成立,如果成立,則depstr為該水深點的完整數字序列,且無小數位,將depstr轉變為數值型即得到正確的水深點讀數,獲取其寬度w和高度h,比較結束,否則繼續比較。

s7、依次計算各個水深點的空間坐標,進一步地,步驟s7具體包括:

s7.1、首先根據數字識別結果獲取數字序列第一個數字左上角在所選圖像區域中的坐標(x,y);

s7.2、採用下述公式計算整數位中心點在整幅海圖中的坐標(cx,cy),即水深點的空間坐標:

cx=x+(x+w/2)×sx

cy=y-(y+h/2)×sy

其中:x,y表示框選的圖像區域左上角的空間坐標;x,y表示數字序列第一個數字左上角在所選圖像區域中的坐標,sx、sy表示x、y方向的像元大小,w表示水深點數值整數位寬度,h表示水深點數值整數位高度。

s8、根據所獲取的水深點空間坐標在步驟s2創建的點矢量文件中生成點要素並將水深數據寫入屬性表,在圖上顯示獲取的水深讀數和空間位置以便判斷正確與否;

s9、目視判斷所獲取的水深點讀數和空間位置是否正確,若不正確,進行修正,若正確,則重複s2至s9步,完成整幅海圖的矢量化,修正步驟為:

s9.1、用戶在地圖窗口中點擊待修正的水深點,獲取用戶點擊位置的空間坐標,比較用戶點擊位置的空間坐標與所有水深點的空間坐標之間的距離,距離最小者為待修正的水深點;

s9.2、操作人員手動錄入水深點正確讀數,根據所錄入數字整數位,從0至9數字模板中讀取相應的數字,若整數位只有1位只需讀取其中一個數字模板圖像,否則需要讀取相應位數的數字模板圖像,併合成為一個圖像,獲取整數位的寬度w和高度h;

s9.3、分別對所選圖像區域和前述步驟獲取的數字模板圖像執行傅立葉變換得到各自的頻譜圖;

s9.4、對兩個頻譜圖執行相關操作(correlation),然後對相關操作(correlation)所得到的圖像執行傅立葉逆變換,在用戶點擊位置附近搜索極大值點(x,y)即為待修正水深點整數位左上角在所選圖像區域中的坐標(x,y);

s9.5、採用下述公式計算整數位中心點在整幅海圖中的坐標(cx,cy),即水深點的空間坐標:

cx=x+(x+w/2)×sx

cy=y-(y+h/2)×sy

其中:x,y表示框選的圖像區域左上角的空間坐標;x,y表示數字序列第一個數字左上角在所選圖像區域中的坐標,sx、sy表示x、y方向的像元大小,w表示水深點數值整數位寬度,h表示水深點數值整數位高度;

s9.6、根據計算得到的(cx,cy)和操作人員錄入的水深點讀數,修改點矢量文件中對應的記錄。

本發明未涉及部分均與現有技術相同或可採用現有技術加以實現。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀