日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

OpenCV Python實現拼圖小游戲

瀏覽:15日期:2022-08-01 14:58:48

基于OpenCV實現拼圖版小游戲,供大家參考,具體內容如下

效果展示

OpenCV Python實現拼圖小游戲

實現

思路

1.對圖像進行分割,分割成m*n個子圖2.打亂子圖的順序3.將子圖重新組成一幅新的圖片并顯示4.添加鼠標點擊響應動作,交換鼠標依次點擊的兩張圖的位置5.每次交換后,判斷是否與原圖是否一致

python代碼

import cv2 as cvimport numpyimport randomimport mathsrc = cv.imread('D:CvPic1.jpg')print(src.shape)h = src.shape[0]w = src.shape[1]c = src.shape[2]row = 3col = 3offset_h = h/rowoffset_w = w/colfirstClick = FalseclickIdx = [0,0]tileList = []def calPicIdx(x, y): print(str(y)+' '+str(h/col)) i = y//(offset_h) print(str(y%offset_h)+' '+str(offset_w)) j = math.ceil((x%w)/offset_w) idx = i*row+j print('i:'+str(i)+' j:'+str(j)+' idx:'+str(idx)) return int(idx)def onMouse(event, x, y, flag ,params): if event==cv.EVENT_LBUTTONDOWN: print('left button down:'+str(x)+' '+str(y)) idx = calPicIdx(x, y) global firstClick firstClick = not firstClick print(firstClick) if firstClick: clickIdx[0] = idx else: clickIdx[1] = idx tileList[clickIdx[0]], tileList[clickIdx[1]] = tileList[clickIdx[1]], tileList[clickIdx[0]] for i in range(0, row): for j in range (0, col): dst[i*offset_h:(i+1)*offset_h-1, j*offset_w:(j+1)*offset_w-1] = tileList[i*row+j] cv.imshow('dst', dst) difference = cv.subtract(dst, src2) result = not numpy.any(difference) #if difference is all zeros it will return False print('result:'+str(result)) print(clickIdx)# --------------splite image into n*n tile--------------tile = numpy.zeros((offset_h-1, offset_w-1, c),numpy.uint8)for i in range(0, row): for j in range (0, col): tile = src[i*offset_h:(i+1)*offset_h-1, j*offset_w:(j+1)*offset_w-1] tileList.append(tile) # cv.imshow('tile', tile)# --------------ramdom the tiles--------------------print(len(tileList))for i in range(len(tileList)-1,0,-1): randomIdx = random.randint(0,i-1) print('swap:'+str(random.randint(0,i-1))+' '+str(i)) tileList[i], tileList[randomIdx] = tileList[randomIdx], tileList[i]# debug show every tile# for k,tile in enumerate(tileList):# cv.imshow('tile'+str(k), tile)dst = numpy.zeros((h, w, c), numpy.uint8)for i in range(0, row): for j in range (0, col): dst[i*offset_h:(i+1)*offset_h-1, j*offset_w:(j+1)*offset_w-1] = tileList[i*row+j]cv.namedWindow('dst')cv.setMouseCallback('dst', onMouse)cv.imshow('dst', dst)# -------------match the origin image and now--------------src2 = src.copy()for i in range(1, row): src2[i*offset_h-1:i*offset_h]= numpy.zeros((1,w,3), numpy.uint8) for j in range(1, col): src2[0:h,j*offset_w-1:j*offset_w]= numpy.zeros((h,1,3), numpy.uint8)# cv.imshow('src2', src2)cv.waitKey(0)

參考

90年代經典“手游”—拼圖板小游戲Opencv實現

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲精品电影| 欧美亚洲综合视频| 国产精品蜜芽在线观看| 欧美日韩视频免费看| 青青青国产精品| 国产亚洲一卡2卡3卡4卡新区| 欧美亚洲二区| 久久精品人人| 欧美精品97| 日韩av在线中文字幕| 色婷婷色综合| 久久精品导航| 亚洲一区二区三区免费在线观看 | 国产精品天天看天天狠| 国产精品久久777777毛茸茸| 国产精品久久国产愉拍| 成人亚洲一区二区| 成人va天堂| 亚洲神马久久| 欧美日韩视频免费看| 国产精品一区二区三区美女 | 视频一区日韩| 国产欧美视频在线| 国产中文在线播放| 欧美日韩在线观看视频小说| 视频一区在线播放| 7m精品国产导航在线| 欧美91在线|欧美| 日韩伦理一区| 欧美日韩黑人| 日韩手机在线| 大香伊人久久精品一区二区| 美女久久久久| 日韩精品导航| 国产成人1区| 午夜日韩av| 91精品国产自产观看在线| 精品国产网站| 欧美精品一卡| 国产精品中文字幕制服诱惑| 欧美成人精品三级网站| 免费不卡在线视频| 麻豆国产欧美一区二区三区| 欧美精品羞羞答答| 日韩精品三级| 成人片免费看| 亚洲日韩视频| 国产91在线播放精品| 午夜国产欧美理论在线播放 | 日韩精品免费一区二区三区| 在线免费观看亚洲| 黑人精品一区| 亚洲乱码视频| 国产精品99视频| 一区二区三区网站| 久久久精品国产**网站| 99视频在线精品国自产拍免费观看| 日韩高清电影一区| 99视频精品全部免费在线视频| 日韩精品久久理论片| 日韩欧美另类一区二区| 日韩和欧美一区二区| 久久蜜桃av| 国产精品黄网站| 日本欧美在线看| 视频福利一区| 久久gogo国模啪啪裸体| 丝袜国产日韩另类美女| 国产 日韩 欧美一区| 欧美日韩午夜| 激情偷拍久久| 福利一区二区免费视频| 亚洲精品动态| 日韩精品免费一区二区三区| 国产欧美日韩一级| 久久最新视频| 999久久久免费精品国产| 久久av超碰| 日韩精品国产精品| 99国产精品| 亚洲大片在线| 伊人网在线播放| 国产精品久久国产愉拍| 日韩综合小视频| 国产亚洲精品v| 中文字幕在线免费观看视频| 久久狠狠久久| 婷婷精品在线| 午夜在线精品| 136国产福利精品导航网址| 久久精品国产福利| 日韩一区二区三免费高清在线观看| 亚洲高清毛片| 亚洲精品.com| 国产videos久久| 国产精品久久久久久模特| 亚洲三级在线| 免费在线视频一区| 日韩视频免费| 欧美不卡视频| 日韩免费高清| 国产aⅴ精品一区二区三区久久| 欧美天堂在线| 91精品在线免费视频| 亚洲精品九九| 亚洲视频二区| 在线精品福利| 亚洲日本久久| 亚洲+小说+欧美+激情+另类| 免费在线观看精品| 国产精品日本| 视频一区二区三区在线| 亚洲免费影视| 视频一区视频二区在线观看| 狠狠久久婷婷| 99久久99久久精品国产片果冰| 天堂√8在线中文| 伊人久久在线| 久久三级视频| 激情久久五月| 国产精品毛片在线| 亚洲伊人影院| 日本vs亚洲vs韩国一区三区二区| 日韩有吗在线观看| 日本不卡视频在线观看| 7777精品| 久久uomeier| 人人精品人人爱| 黄色在线一区| 一区福利视频| 美女久久久久| 99香蕉国产精品偷在线观看 | 久久99久久人婷婷精品综合| 国产欧美日韩一区二区三区四区 | 午夜日本精品| 免费久久久久久久久| 1024精品一区二区三区| 最新日韩欧美| 视频一区国产视频| 日韩激情精品| 国产欧美亚洲精品a| 国产精品日本一区二区不卡视频| 欧美激情一区| 午夜av不卡| 午夜视频精品| 日韩一二三区在线观看| 麻豆一区二区在线| 日韩一区欧美| 一本色道精品久久一区二区三区| 中文字幕一区二区精品区| 亚洲无线观看| 国产精品片aa在线观看| 精品视频国内| 999精品在线| 亚洲综合色婷婷在线观看| 日韩不卡一二三区| 久久精品三级| 一本大道色婷婷在线| 欧美日韩视频一区二区三区| 综合激情网...| 国产精品亚洲欧美日韩一区在线| 精品伊人久久| 亚洲成人精品| 免费久久精品视频| 日韩国产欧美视频| 福利一区和二区| 精品一区免费| 91麻豆精品激情在线观看最新| 欧美成人一二区| 欧美日韩精品免费观看视欧美高清免费大片| 久久精品国语| 亚洲理论在线| 精品一区二区三区免费看| 极品裸体白嫩激情啪啪国产精品| 亚洲一区二区三区四区五区午夜| 日韩精品中文字幕一区二区| 国产黄大片在线观看| 国产美女一区| 国产精品成人自拍| 91精品一区国产高清在线gif| 夜夜精品视频| 国产精品1区| 欧美日韩国产综合网| 国产精品极品在线观看| 免费成人网www| 国产精品99精品一区二区三区∴| 亚洲一本视频| 国产精品成人**免费视频| 婷婷激情图片久久| 久久av免费| 蜜桃视频免费观看一区| 岛国av免费在线观看| 日韩精品福利一区二区三区| 久久青草久久| 国产精品4hu.www| 亚洲一区二区三区免费在线观看| 精品国产成人| 亚洲精品九九| 亚洲午夜黄色| 四虎8848精品成人免费网站|