Python 板


LINE

想問一下各位我現在生成一個變形的網格,想將圖片按照網格的形式用cv2.remap 把圖片 映射在網格上,產生摺痕這樣。類似附圖一樣的效果。 但是remap出來圖片的被壓縮成一個很小的size並且顛倒,我resize 過尺寸,還是一樣。我 想做成像最後一張圖的效果。想請問要怎麼做到? 謝謝各位。 import numpy as np import matplotlib.pyplot as plt import cv2 inputs = cv2.imread("26KN4.jpg") nh, nw = inputs.shape[0], inputs.shape[1] inputs = cv2.resize(inputs, dsize=(nh, nw), interpolation=cv2.INTER_AREA) mr = nh mc = nw print(mr) print(mc) xx = np.arange(mr-1, -1, -1) yy = np.arange(0, mc, 1) [Y, X] = np.meshgrid(xx, yy) ms = np.transpose(np.asarray([X.flatten('F'), Y.flatten('F')]), (1,0)) perturbed_mesh = ms nv = np.random.randint(20) - 1 for k in range(nv): #Choosing one vertex randomly vidx = np.random.randint(np.shape(ms)[0]) vtex = ms[vidx, :] #Vector between all vertices and the selected one xv = perturbed_mesh - vtex #Random movement mv = (np.random.rand(1,2) - 0.5)*20 hxv = np.zeros((np.shape(xv)[0], np.shape(xv)[1] +1) ) hxv[:, :-1] = xv hmv = np.tile(np.append(mv, 0), (np.shape(xv)[0],1)) d = np.cross(hxv, hmv) d = np.absolute(d[:, 2]) d = d / (np.linalg.norm(mv, ord=2)) wt = d curve_type = np.random.rand(1) if curve_type > 0.3: alpha = np.random.rand(1) * 50 + 50 wt = alpha / (wt + alpha) else: alpha = np.random.rand(1) + 1 wt = 1 - (wt / 100 )**alpha msmv = mv * np.expand_dims(wt, axis=1) perturbed_mesh = perturbed_mesh + msmv plt.scatter(perturbed_mesh[:, 0], perturbed_mesh[:, 1], c=np.arange(0, mr*mc)) plt.show() https://ibb.co/FY6MPmd # dh=500 # dw=500 # img = cv2.copyMakeBorder(inputs, dh, dh, dw, dw, borderType=cv2.BORDER_ CONSTANT, value=(0,0,0)) xs, ys = perturbed_mesh[:, 0], perturbed_mesh[:, 1] xs = xs.reshape(nh, nw).astype(np.float32) ys = ys.reshape(nh, nw).astype(np.float32) dst = cv2.remap(img, xs, ys, cv2.INTER_CUBIC) image = cv2.resize(dst, (1024,1024),interpolation = cv2.INTER_AREA) plt.imshow(image) https://ibb.co/8c1PFMx https://i.stack.imgur.com/tSBWi.png
--



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.118.102.68 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1670579044.A.C09.html
1F:→ tzouandy2818: 不知道是不是我的問題 看不懂你到底想問什麼12/10 02:21
2F:推 jasonfghx: Good question12/10 08:31
※ 編輯: kyly157 (111.250.190.58 臺灣), 12/10/2022 11:02:26 ※ 編輯: kyly157 (111.250.190.58 臺灣), 12/10/2022 11:06:38 ※ 編輯: kyly157 (111.250.190.58 臺灣), 12/10/2022 11:07:20







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP