国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于亞像素邊緣檢測模型的圖像輪廓測量方法

2022-09-22 07:49:20宋浩然張哲許圳淇
電腦知識(shí)與技術(shù) 2022年23期
關(guān)鍵詞:二值輪廓算子

宋浩然,張哲,許圳淇

(上海理工大學(xué),上海 200093)

目前工業(yè)生產(chǎn)需求對各種工件和零件的測量精度要求越來越高,這對工業(yè)零件的輪廓檢測和測量提出了更高的要求。但受到檢測設(shè)備成本的限制,難以有效提升檢測精度。因此,不僅需要使用圖像的像素進(jìn)行邊緣檢測,還需要使用亞像素對圖像進(jìn)行處理。亞像素邊緣提取是一種比傳統(tǒng)像素邊緣提取更準(zhǔn)確的方法,如果采用亞像素技術(shù)將精度提高到0.1像素,相當(dāng)于將圖像系統(tǒng)分析分辨率提高10倍。

1 亞像素檢測技術(shù)的研究現(xiàn)狀

1.1 亞像素細(xì)分算法

亞像素細(xì)分算法可以運(yùn)用在刀調(diào)儀上[1],該算法先使用亞像素對圖像進(jìn)行處理,然后設(shè)定一個(gè)閾值,通過計(jì)算邊緣點(diǎn)的坐標(biāo)來確定邊緣。一般的閾值在0~255之間,該算法選取的閾值在30~100之間。但是該算法比較簡單,容錯(cuò)率低,使用的時(shí)候需要調(diào)參,比較煩瑣,應(yīng)用范圍有限。當(dāng)閾值發(fā)生變化的時(shí)候,計(jì)算的邊緣點(diǎn)也會(huì)隨之變化。

1.2 基于sigmoid函數(shù)的亞像素邊緣檢測算法

基于sigmoid函數(shù)的亞像素邊緣檢測算法需要sigmoid函數(shù)在x軸和y軸的偏移量、邊緣傾斜度等參量。該算法參量過多,涉及求導(dǎo),計(jì)算微分方程等步驟。雖然能達(dá)到一定的精度,但是其過程煩瑣,不易實(shí)現(xiàn)[2]。Sigmoid函數(shù)主要用于神經(jīng)網(wǎng)絡(luò)的激活函數(shù),但是在亞像素邊緣檢測方面有欠缺性。

2 亞像素圖像的獲取方法

2.1 采用雙線性插值法的原因

筆者建立了亞像素邊緣檢測模型,提出了亞像素圖像下的Canny算子邊緣檢測模型。假設(shè)原始圖像為1000個(gè)像素,如果每個(gè)像素?cái)U(kuò)展為10個(gè)像素,則該像素圖像與其對應(yīng)有10000個(gè)像素,所以在圖像處理過程中要提高精度。筆者提出了一種雙線性插值的方法,將原始圖像的像素點(diǎn)放大到原始圖像的10倍,得到一個(gè)亞像素圖像。筆者以亞像素圖像為基礎(chǔ),對圖像進(jìn)行濾波和二值化,然后使用Canny算子檢測圖像的邊緣,最后利用邊緣檢測得到的圖像梯度優(yōu)化圖像的輪廓。為了獲得精度更高的亞像素圖像,筆者采用雙線性插值法對圖像進(jìn)行擴(kuò)展,將圖像的像素點(diǎn)擴(kuò)大到原來的100倍。在邊緣檢測完成后,為了得到有序的邊緣輪廓,筆者提出了一種基于連通域檢測算法思想的散點(diǎn)輪廓排序方法。該方法基于連通域的檢測和堆棧進(jìn)出操作,可以有效地對二值圖像中連續(xù)無序的散點(diǎn)進(jìn)行排序。此外,散點(diǎn)輪廓排序算法還可用于區(qū)分不連通的輪廓曲線,分別計(jì)算它們在像素坐標(biāo)系中的周長。

2.1 雙線性插值法的步驟

亞像素邊緣定位和檢測的前提是對原始圖像進(jìn)行擴(kuò)展得到亞像素圖像,因此筆者選擇插值方法得到亞像素圖像。最常見的插值算法是樣條插值[3]。該方法的原理是在像素間構(gòu)造平滑過渡樣條曲線,以補(bǔ)充像素間準(zhǔn)確的圖像信息。該方法的缺點(diǎn)是算法復(fù)雜度高,運(yùn)行速度不能滿足大規(guī)模圖像處理的要求。與樣條插補(bǔ)相比,直線插補(bǔ)具有明顯的速度優(yōu)勢。因此,筆者在線性插值中使用雙線性插值方法對圖像進(jìn)行插值。在數(shù)學(xué)上,雙線性插值是具有兩個(gè)變量的插值函數(shù)的線性插值擴(kuò)展,其核心思想是分別在兩個(gè)方向上進(jìn)行線性插值[4]。進(jìn)行雙線性插值,首先在圖像的x方向進(jìn)行線性插值,

然后在圖像的y方向進(jìn)行線性插值,

基于上述,雙線性插值結(jié)果如下。

其中,f是一個(gè)未知函數(shù),P=(x,y)是一個(gè)關(guān)于未知函數(shù)值的函數(shù),并且有四個(gè)已知函數(shù)值點(diǎn),如圖1所示,點(diǎn)R1和R2的函數(shù)值可以通過x方向的線性插值得到,然后在R1和R2的基礎(chǔ)上通過y方向的線性插值得到點(diǎn)P的函數(shù)值。

圖1 已知數(shù)據(jù)點(diǎn)和待插值數(shù)據(jù)點(diǎn)

3 輪廓的檢測和分類

3.1 Canny算法邊緣檢測

邊緣檢測是提取輪廓并計(jì)算輪廓像素長度的過程中最重要的環(huán)節(jié)[5],也是亞像素邊緣檢測模型和算法的核心。筆者設(shè)計(jì)的邊緣檢測算法基于Canny邊緣檢測,改進(jìn)了檢測后得到的輪廓像素?zé)o序、不連續(xù)的問題。在像素圖像下,常見的邊緣檢測算子有Sobel、Prewitt、Roberts、Canny、Marr-Hildreth等[6],其中比較高級的算子有Canny算子和Marr-Hildreth算子。經(jīng)過比較,筆者選擇Canny算子作為亞像素邊緣檢測模型和算法的基礎(chǔ)。Canny算子是由澳大利亞計(jì)算機(jī)科學(xué)家John F.Canny開發(fā)的一種多級邊緣檢測算法。該算法可以盡可能地標(biāo)記圖像中的實(shí)際邊緣,實(shí)現(xiàn)對噪聲的最小響應(yīng)。使用Canny算子進(jìn)行邊緣檢測的基本步驟如下:

(1)高斯濾波;

(2)計(jì)算梯度圖像和角度圖像;

(3)梯度圖像非極大抑制;

(4)邊緣連接使用雙閾值。

3.2 濾波和優(yōu)化

Canny算子邊緣檢測是二值圖像,存在一定的邊緣不連續(xù)性[7]。本文提出的邊緣檢測模型在Canny算子邊緣檢測的基礎(chǔ)上進(jìn)行了改進(jìn)。本文涉及的方法是計(jì)算圖像的梯度函數(shù)。假設(shè)3×3圖像矩陣的中心坐標(biāo)為(xi,yi),其他點(diǎn)的坐標(biāo)如圖2所示。

圖2 像素坐標(biāo)關(guān)系

該圖像是二值圖像。假設(shè)其像素函數(shù)為I,則該函數(shù)的梯度函數(shù)與像素函數(shù)的關(guān)系為:

3.3 獲取有序邊緣輪廓曲線

連通域搜索算法用于檢測相同的連通輪廓數(shù)據(jù)點(diǎn),并將它們分開計(jì)算每個(gè)輪廓的像素長度,最后求和得到整個(gè)輪廓圖像的周長。連通域搜索算法是一種在二值圖像中尋找黑色或白色連通區(qū)域的方法,分為4連通和8連通[8]。8連通是指在一個(gè)像素的8個(gè)相鄰像素中,如果一個(gè)像素與中心像素具有相同的像素值,則認(rèn)為該像素與中心像素連通。4連通的原理與8連通相同,4連通的搜索范圍只是中心像素的上、下、左、右像素。筆者采用8連通方法,將邊緣檢測后得到的二值輪廓圖像作為處理目標(biāo)?;静襟E如下:遍歷二值圖像,找到像素值為1并標(biāo)記為I的任意像素;在像素點(diǎn)8的鄰域檢測到相同的像素點(diǎn),將其視為I+1點(diǎn),并標(biāo)記其訪問;遞歸搜索像素點(diǎn)I+1的8個(gè)鄰域中的同一個(gè)像素點(diǎn),直到周圍沒有未訪問的標(biāo)記,所有標(biāo)記的像素形成的曲線就是輪廓曲線;在等高線中,找到等高線的端點(diǎn)是8個(gè)連通鄰域中只有一個(gè)邊標(biāo)的點(diǎn);將輪廓點(diǎn)排序,以任意端點(diǎn)為起點(diǎn),即可得到有序輪廓。

4 實(shí)驗(yàn)驗(yàn)證

4.1 測試樣本說明

與獲取有序輪廓曲線的方法類似,筆者采用的輪廓檢測算法也是基于8連通方法。在檢測到連接的像素后,將它們壓入堆棧。檢測到整個(gè)輪廓后,依次訪問堆棧中的像素,逐點(diǎn)計(jì)算距離,得到像素坐標(biāo)系中輪廓的周長。

4.2 像素圖像與亞像素圖像的比較

通過插值在每兩點(diǎn)之間插入10個(gè)像素,使圖像的X軸和Y軸分辨率分別提高10倍。圖3顯示了原始圖像和擴(kuò)展亞像素圖像之間的比較。

圖3 像素圖像與亞像素圖像的比較

4.3 二值邊緣圖像的像素矩陣

通過函數(shù)的梯度函數(shù)與像素函數(shù)得到的矩陣就是二值邊緣圖像的像素矩陣。筆者使用上述算法對三幅圖像進(jìn)行卷積處理,得到三幅圖像的邊緣圖像。處理結(jié)果如圖4所示:

圖4 原始圖像上不同顏色的輪廓

4.4 邊緣輪廓的測試結(jié)果

表1、表2和表3包含三張圖片的輪廓點(diǎn)數(shù)和輪廓的長度。下表中的長度單位均為像素。

表1 邊緣輪廓數(shù)據(jù)輸出格式

表2 邊緣輪廓數(shù)據(jù)輸出格式

表3 邊緣輪廓數(shù)據(jù)輸出格式

4.5 結(jié)果分析

經(jīng)測試,該模型實(shí)現(xiàn)的邊緣檢測精度是Canny算子的10倍,電子測量精度也高于傳統(tǒng)電子測量方法。

5 結(jié)束語

該模型精度比Canny算子高,而且消除了光線和零件毛刺對圖像處理的影響??蓱?yīng)用于工廠各種零件的測量、高精度邊緣提取和圓角半徑測量、激光切割測量等一系列應(yīng)用場景,且受環(huán)境影響小,魯棒性高。

猜你喜歡
二值輪廓算子
輪廓錯(cuò)覺
混沌偽隨機(jī)二值序列的性能分析方法研究綜述
擬微分算子在Hp(ω)上的有界性
支持CNN與LSTM的二值權(quán)重神經(jīng)網(wǎng)絡(luò)芯片
各向異性次Laplace算子和擬p-次Laplace算子的Picone恒等式及其應(yīng)用
基于實(shí)時(shí)輪廓誤差估算的數(shù)控系統(tǒng)輪廓控制
一類Markov模算子半群與相應(yīng)的算子值Dirichlet型刻畫
基于二值形態(tài)學(xué)算子的軌道圖像分割新算法
基于曲率局部二值模式的深度圖像手勢特征提取
Roper-Suffridge延拓算子與Loewner鏈
遂昌县| 赫章县| 清原| 花莲县| 额敏县| 楚雄市| 赣州市| 略阳县| 封丘县| 大化| 乳山市| 塔城市| 武穴市| 三原县| 营口市| 巢湖市| 英德市| 仁怀市| 盐池县| 墨玉县| 凭祥市| 怀宁县| 台湾省| 山丹县| 丰原市| 元阳县| 大埔县| 蒙城县| 沽源县| 乌恰县| 桐柏县| 濉溪县| 康定县| 杭锦后旗| 漾濞| 安远县| 德江县| 航空| 清苑县| 台中市| 民丰县|