婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Python圖像處理之圖像拼接

Python圖像處理之圖像拼接

熱門標簽:外呼不封號系統 蘇州電銷機器人十大排行榜 江蘇房產電銷機器人廠家 幫人做地圖標注收費算詐騙嗎 溫州旅游地圖標注 悟空智電銷機器人6 遼寧400電話辦理多少錢 電信營業廳400電話申請 荊州云電銷機器人供應商

一、前言

圖像拼接技術就是將數張有重疊部分的圖像(可能是不同時間、不同視角或者不同傳感器獲得的)拼成一幅無縫的全景圖或高分辨率圖像的技術。

二、特征點匹配

特征點具有局部差異性

動機:特征點具有局部差異性

圖像梯度

Harris矩陣


以每個點為中心取一個窗口,窗口大小為55或者77,如果這個點具有差異性,往周圍任意方向移動,周圍的環境變化都是會比較大的,如果滿足這個特性,我們就認為這個特征點具有明顯的局部差異性。在工事中,I表示像素,如果是 彩色圖像就是RGB,灰色圖像就是灰度。(u,v)表示方向。然后對上式進行一階泰勒展開。
Harris矩陣H的特征值分析:

矩陣特征值反應了兩個垂直方向的變化情況,一個事變化最快的方向,一個事變化最慢的方向

興趣點位于光滑區域,不是特征點

興趣點位于邊緣區域

興趣點位于角點區域

所以檢測特征的任務轉化為計算Harris矩陣,判斷特征值大小。

在實際操作中,很少通過計算特征值來判斷,因為計算特征值計算量比較大,取而代之的是Harris角點準則。

三、匹配錯誤的特征點干擾

在進行圖像匹配過程中,如果圖像的噪聲太大,就會使得特征點的匹配發生了偏差,匹配到了錯誤的點,這種不好的匹配效果,會對后面的圖像拼接產生很大的影響,如下圖

四、消除干擾

為了進一步提升匹配精度,可以采用隨機樣本一致性(RANSAC)方法。

因為我們是使用一幅圖像(一個平面物體),我們可以將它定義為剛性的,可以在pattern image和query image的特征點之間找到單應性變換(homography transformation )。使用cv::findHomography找到這個單應性變換,使用RANSAC找到最佳單應性矩陣。(由于這個函數使用的特征點同時包含正確和錯誤匹配點,因此計算的單應性矩陣依賴于二次投影的準確性)

五、RANSAC進行圖像匹配

RANSAC是“RANdom SAmple Consensus(隨機抽樣一致)”的縮寫。它可以從一組包含“局外點”的觀測數據集中,通過迭代方式估計數學模型的參數。它是一種不確定的算法——它有一定的概率得出一個合理的結果;為了提高概率必須提高迭代次數。

RANSAC的基本假設是:

(1)數據由“局內點”組成,例如:數據的分布可以用一些模型參數來解釋;
(2)“局外點”是不能適應該模型的數據;
(3)除此之外的數據屬于噪聲。

局外點產生的原因有:噪聲的極值;錯誤的測量方法;對數據的錯誤假設。

RANSAC也做了以下假設:給定一組(通常很小的)局內點,存在一個可以估計模型參數的過程;而該模型能夠解釋或者適用于局內點。

RANSAC原理

OpenCV中濾除誤匹配對采用RANSAC算法尋找一個最佳單應性矩陣H,矩陣大小為3×3。RANSAC目的是找到最優的參數矩陣使得滿足該矩陣的數據點個數最多,通常令h3=1來歸一化矩陣。由于單應性矩陣有8個未知參數,至少需要8個線性方程求解,對應到點位置信息上,一組點對可以列出兩個方程,則至少包含4組匹配點對。

其中(x,y)表示目標圖像角點位置,(x',y')為場景圖像角點位置,s為尺度參數。

RANSAC算法從匹配數據集中隨機抽出4個樣本并保證這4個樣本之間不共線,計算出單應性矩陣,然后利用這個模型測試所有數據,并計算滿足這個模型數據點的個數與投影誤差(即代價函數),若此模型為最優模型,則對應的代價函數最小。

RANSAC算法步驟:

1.隨機從數據集中隨機抽出4個樣本數據 (此4個樣本之間不能共線),計算出單應矩陣H,記為模型M;

2.計算數據集中所有數據與模型M的投影誤差,若誤差小于閾值,加入內點集 I ;

3.如果當前內點集 I 元素個數大于最優內點集 I_best , 則更新 I_best = I,同時更新迭代次數k ;

4.如果迭代次數大于k,則退出 ; 否則迭代次數加1,并重復上述步驟;

注:迭代次數k在不大于最大迭代次數的情況下,是在不斷更新而不是固定的;
其中,p為置信度,一般取0.995;w為"內點"的比例 ; m為計算模型所需要的最少樣本數=4;


使用RANSAC圖片匹配

from numpy import *
from matplotlib.pyplot import *
from PIL import Image
import warp
import homography
from PCV.localdescriptors import sift

featname = ['img/' + str(i + 1) + '.sift' for i in range(5)]
imname = ['img/' + str(i + 1) + '.jpg' for i in range(5)]
l = {}
d = {}
for i in range(5):
    sift.process_image(imname[i], featname[i])
    l[i], d[i] = sift.read_features_from_file(featname[i])

matches = {}
for i in range(4):
    matches[i] = sift.match(d[i + 1], d[i])

# visualize the matches (Figure 3-11 in the book)
for i in range(4):
    im1 = array(Image.open(imname[i]))
    im2 = array(Image.open(imname[i + 1]))
    figure()
    sift.plot_matches(im2, im1, l[i + 1], l[i], matches[i], show_below=True)

# 將匹配轉換成齊次坐標點的函數
def convert_points(j):
    ndx = matches[j].nonzero()[0]
    fp = homography.make_homog(l[j + 1][ndx, :2].T)
    ndx2 = [int(matches[j][i]) for i in ndx]
    tp = homography.make_homog(l[j][ndx2, :2].T)

    # switch x and y - TODO this should move elsewhere
    fp = vstack([fp[1], fp[0], fp[2]])
    tp = vstack([tp[1], tp[0], tp[2]])
    return fp, tp


# 估計單應性矩陣
model = homography.RanSacModel()

fp, tp = convert_points(1)
H_12 = homography.H_from_ransac(fp, tp, model)[0]  # im 1 to 2
fp, tp = convert_points(0)
H_01 = homography.H_from_ransac(fp, tp, model)[0]  # im 0 to 1
tp, fp = convert_points(2)  # NB: reverse order
H_32 = homography.H_from_ransac(fp, tp, model)[0]  # im 3 to 2
tp, fp = convert_points(3)  # NB: reverse order
H_43 = homography.H_from_ransac(fp, tp, model)[0]  # im 4 to 3

# 扭曲圖像
delta = 100  # 用于填充和平移 for padding and translation

im1 = array(Image.open(imname[1]), "uint8")
im2 = array(Image.open(imname[2]), "uint8")
im_12 = warp.panorama(H_12, im1, im2, delta, delta)
im1 = array(Image.open(imname[0]), "f")
im_02 = warp.panorama(dot(H_12, H_01), im1, im_12, delta, delta)
im1 = array(Image.open(imname[3]), "f")
im_32 = warp.panorama(H_32, im1, im_02, delta, delta)
im1 = array(Image.open(imname[4]), "f")
im_42 = warp.panorama(dot(H_32, H_43), im1, im_32, delta, 2 * delta)

figure()
imshow(array(im_42, "uint8"))
axis('off')
show()

進行匹配的圖片


匹配后的圖片



六、總結

本次的拼接效果比較好,原因是因為我在同一時刻差不多角度拍攝的照片,噪聲比較小,之前一組圖片拍攝的噪聲太大,導致最后出現不了結果。
由圖片這部分可得,在不同時刻下拍攝照片導致天空顏色不同,在拼接的時候也會有明顯的分割線。

在實驗過程中,剛開始使用了一組照片,但運行不出結果,后來經過查詢找到原因是因為圖片匹配度太低,沒辦法進行匹配,后來重新拍攝了一組圖片最終才完成。

到此這篇關于Python圖像處理之圖像拼接的文章就介紹到這了,更多相關Python圖像拼接內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python圖像處理之圖片拼接和堆疊案例教程
  • python圖片灰度化處理的幾種方法
  • Python圖片檢索之以圖搜圖
  • python圖片合成的示例
  • Python圖片處理之圖片裁剪教程
  • 昨晚我用python幫隔壁小姐姐P證件照然后發現

標簽:三沙 臺灣 黃山 濟南 欽州 喀什 宿遷 景德鎮

巨人網絡通訊聲明:本文標題《Python圖像處理之圖像拼接》,本文關鍵詞  Python,圖像處理,之,圖像,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python圖像處理之圖像拼接》相關的同類信息!
  • 本頁收集關于Python圖像處理之圖像拼接的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    麻豆91精品91久久久的内涵| 亚洲综合色婷婷| 久久精品视频一区二区| 天堂va蜜桃一区二区三区漫画版| 国产成人精品亚洲777人妖| 欧美酷刑日本凌虐凌虐| 亚洲美女免费在线| 91女厕偷拍女厕偷拍高清| 日本一二三四高清不卡| 丁香啪啪综合成人亚洲小说| 亚洲国产精品t66y| av在线一区二区三区| 亚洲天堂av老司机| 欧美色图第一页| 日韩二区三区四区| 精品久久久久一区二区国产| 韩国v欧美v亚洲v日本v| 欧美激情一区二区三区全黄 | 亚洲大尺度视频在线观看| 色悠悠久久综合| 亚洲国产视频直播| 欧美白人最猛性xxxxx69交| 国产一区二区三区久久久| 亚洲国产精品精华液2区45| 成人一区二区在线观看| 亚洲精品成人少妇| 7777精品伊人久久久大香线蕉完整版 | 在线观看国产一区二区| 亚洲1区2区3区4区| 久久久亚洲欧洲日产国码αv| 国产99久久久精品| 亚洲一区在线播放| 久久亚洲一级片| 欧美三级日韩三级国产三级| 精品一区二区三区视频在线观看 | 亚洲一级片在线观看| 日韩久久久精品| 不卡视频免费播放| 亚洲宅男天堂在线观看无病毒| 91精品国产综合久久精品 | 欧美aaaaaa午夜精品| 国产亚洲一二三区| 欧美日韩亚洲另类| 国产精品一二三四| 天堂va蜜桃一区二区三区漫画版 | 亚洲色大成网站www久久九九| 欧美亚洲图片小说| 国产高清在线观看免费不卡| 亚洲国产精品一区二区久久| 久久蜜桃香蕉精品一区二区三区| 在线免费观看视频一区| 国产综合久久久久久久久久久久| 亚洲一区二区五区| 综合欧美一区二区三区| 欧美成人艳星乳罩| 欧美性猛交一区二区三区精品| 国产精品影视在线| 青青青伊人色综合久久| 亚洲综合激情网| 国产精品久久久久久久第一福利| 91精品国产黑色紧身裤美女| 欧美亚洲综合在线| jiyouzz国产精品久久| 国产在线不卡一卡二卡三卡四卡| 日韩电影在线观看网站| 亚洲一级不卡视频| 一区二区三区波多野结衣在线观看| 国产女人18水真多18精品一级做| 精品久久久久久久久久久久久久久久久| 在线观看三级视频欧美| 色综合视频一区二区三区高清| 国产精品一区二区你懂的| 精品一区二区三区视频在线观看| 日韩激情视频网站| 丝袜脚交一区二区| 欧美96一区二区免费视频| 日韩主播视频在线| 日韩国产成人精品| 免费观看在线综合色| 免费成人av在线| 久久99国产精品麻豆| 韩国中文字幕2020精品| 国产一区中文字幕| 不卡的电影网站| 色综合久久久网| 欧美日免费三级在线| 777久久久精品| 久久久久国产精品麻豆| 久久婷婷国产综合精品青草| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 亚洲自拍偷拍综合| 亚洲精品免费一二三区| 亚洲一区二区三区四区的| 天堂午夜影视日韩欧美一区二区| 麻豆91在线播放| 91网上在线视频| 精品国免费一区二区三区| 一色桃子久久精品亚洲| 免费一级欧美片在线观看| www.亚洲在线| 日韩精品一区国产麻豆| 自拍偷在线精品自拍偷无码专区 | 亚洲欧美日韩久久精品| 亚洲精品中文字幕乱码三区| 日韩va欧美va亚洲va久久| 狠狠色狠狠色综合| 在线观看日产精品| 日本一区二区免费在线观看视频 | 亚洲天堂av一区| 一区二区三区久久久| 精品成a人在线观看| 国产精品国产馆在线真实露脸| 日韩一区二区免费高清| 欧美伊人久久久久久久久影院| 成人h动漫精品一区二区| 91精品欧美一区二区三区综合在| 色综合久久中文字幕| 亚洲精品免费视频| 亚洲精品一线二线三线无人区| 在线观看91av| 91精品国产欧美一区二区| 欧美精品aⅴ在线视频| 欧美日韩一级大片网址| 精品视频资源站| 欧美日韩成人一区二区| 欧美日韩一区久久| 欧美日韩一区二区三区高清| 欧美亚洲综合色| 欧美片网站yy| 91精品婷婷国产综合久久竹菊| 亚洲色图视频网| 粉嫩在线一区二区三区视频| 国产91清纯白嫩初高中在线观看 | 欧美午夜宅男影院| 最新欧美精品一区二区三区| 国产精品免费av| 中文字幕一区二区三区不卡在线| 久久久久9999亚洲精品| 中文字幕乱码日本亚洲一区二区| 91美女在线观看| 亚洲欧美国产毛片在线| 亚洲一区视频在线观看视频| 一区二区三区 在线观看视频| 亚洲猫色日本管| 日韩精品亚洲一区二区三区免费| 国产精品网友自拍| 白白色 亚洲乱淫| 欧美日韩成人一区二区| 成人午夜视频在线观看| 91丨porny丨最新| 国产精品国产三级国产aⅴ原创 | 亚洲午夜精品17c| 亚洲成人黄色小说| 亚洲三级视频在线观看| 在线视频国内自拍亚洲视频| 6080午夜不卡| 欧美精品一区二区在线观看| 国产精品网站导航| 天天av天天翘天天综合网色鬼国产| 在线视频中文字幕一区二区| 麻豆精品久久久| jlzzjlzz亚洲日本少妇| 欧美三级在线视频| 久久久综合网站| 精品国产一区二区三区不卡| 成人免费av网站| 欧美精品v日韩精品v韩国精品v| 久久久www成人免费毛片麻豆| 亚洲免费成人av| 精品一区二区免费| 亚洲天堂网中文字| 久久精品国产精品亚洲综合| 99久久国产免费看| 精品久久久三级丝袜| 亚洲国产一区二区a毛片| 亚洲人一二三区| 国产一区二区在线视频| 欧洲激情一区二区| 日本一区二区高清| 久久久久久日产精品| 欧美这里有精品| 国产精品区一区二区三区| 蜜桃精品在线观看| 欧美高清视频不卡网| 日韩一区二区电影| 在线观看免费一区| 亚洲色图制服丝袜| 北岛玲一区二区三区四区| 26uuu精品一区二区在线观看| 久久美女艺术照精彩视频福利播放| 日韩国产高清在线| 91精品国产高清一区二区三区| 亚洲精品中文字幕在线观看| 久久久精品蜜桃| 韩国女主播一区二区三区| 日韩一级高清毛片| 琪琪久久久久日韩精品| 日韩一区二区三区电影在线观看| 蜜桃视频一区二区| 日韩欧美国产1|