Python3实现多图拼接


Python3实现的多图拼接,需要OpenCV,亲测可用,有代码有图,在cmd上跑
资源截图
代码片段和文件信息
import cv2
import numpy as np 

class matchers:
def __init__(self):
self.surf = cv2.xfeatures2d.SURF_create()
FLANN_INDEX_KDTREE = 0
index_params = dict(algorithm=0 trees=5)
search_params = dict(checks=50)
self.flann = cv2.FlannbasedMatcher(index_params search_params)

def match(self i1 i2 direction=None):
imageSet1 = self.getSURFFeatures(i1)
imageSet2 = self.getSURFFeatures(i2)
print “Direction : “ direction
matches = self.flann.knnMatch(
imageSet2[‘des‘]
imageSet1[‘des‘]
k=2

good = []
for i  (m n) in enumerate(matches):
if m.distance < 0.7*n.distance:
good.append((m.trainIdx m.queryIdx))

if len(good) > 4:
pointsCurrent = imageSet2[‘kp‘]
pointsPrevious = imageSet1[‘kp‘]

matchedPointsCurrent = np.float32(
[pointsCurrent[i].pt for (__ i) in good]

matchedPointsPrev = np.float32(
[pointsPrevious[i].pt for (i __) in good]


H s = cv2.findHomography(matchedPointsCurrent matchedPointsPrev cv2.RANSAC 4)
return H
return None

def getSURFFeatures(self im):
gray = cv2.cvtColor(im cv2.COLOR_BGR2GRAY)
kp des = self.surf.detectAndCompute(gray None)
return {‘kp‘:kp ‘des‘:des}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-11-12 06:14  Python-Multiple-Image-Stitching-master
     目录           0  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercode
     文件        1194  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercodematchers.py
     文件        4147  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercodepano.py
     目录           0  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercode xtlists
     文件          84  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercode xtlistsfiles1.txt
     文件          47  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercode xtlistsfiles2.txt
     文件          99  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercode xtlistsfiles2.txt~
     文件          59  2016-11-12 06:14  Python-Multiple-Image-Stitching-mastercode xtlistsfiles3.txt
     目录           0  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimages
     文件       47382  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimages1.jpg
     文件       78825  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimages1Hill.JPG
     文件       44167  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimages2.jpg
     文件       79971  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimages2Hill.JPG
     文件       40361  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimages3.jpg
     文件       79327  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimages3Hill.JPG
     文件       34014  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimagesS1.jpg
     文件       38259  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimagesS2.jpg
     文件       44614  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimagesS3.jpg
     文件       41734  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimagesS5.jpg
     文件       38498  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimagesS6.jpg
     文件      100126  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimageswd1.jpg
     文件       97652  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimageswd2.jpg
     文件       15398  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterimageswd3.jpg
     文件       58982  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterlunchroom_ultimate.jpg
     文件        2006  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterREADME.md
     文件      180331  2016-11-12 06:14  Python-Multiple-Image-Stitching-master est.jpg
     文件       58838  2016-11-12 06:14  Python-Multiple-Image-Stitching-master est1.jpg
     文件      116574  2016-11-12 06:14  Python-Multiple-Image-Stitching-master est12.jpg
     文件       45634  2016-11-12 06:14  Python-Multiple-Image-Stitching-masterwd123.jpg

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)