python+opencv 给女朋友照片加上个性相框,学会等着她夸你。
生活随笔
收集整理的这篇文章主要介绍了
python+opencv 给女朋友照片加上个性相框,学会等着她夸你。
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
讲解下如何给女朋友照片加上个性相框,学会让她夸你。
。
素材1
相框
你的女朋友图
代码
import cv2 import numpy as np def get_four_points(im):data = {}data['im'] = im.copy()data['points'] = []cv2.namedWindow("Image", 0)cv2.imshow('Image',im)#请注意你标记点的数据,是顺时针,需要与pst_src 方向一致cv2.setMouseCallback("Image",mouse_handler,data)cv2.waitKey(0)#竖直方向堆叠起来;points = np.vstack(data['points']).astype(float)return points #---第4步:主函数--- def main():#美女照片读取,注意路径img_src = cv2.imread("meinv.jpg")size = img_src.shape# 取得四个坐标##需要注意一点,坐标 Pick 点的顺序须与记录替换图像顶点顺序一致,否则转换图会有偏差pst_src = np.array([[0,0],[size[1]-1,0],[size[1]-1,size[0]-1],[0,size[0]-1]],dtype=float)#大图:相框,注意路径img_dst = cv2.imread("xiangkuang.jpg")print("点击bllboard的四个角,然后回车")#获取四个点four_point = get_four_points(img_dst)#Calculate Homography between source and destination points#计算源点和目标点之间的单应性h,status = cv2.findHomography(pst_src,four_point)#透视变换(单应性)im_temp = cv2.warpPerspective(img_src,h,(img_dst.shape[1],img_dst.shape[0]))cv2.fillConvexPoly(img_dst,four_point.astype(int),0,16)#照片叠加img_dst = img_dst + im_tempcv2.namedWindow("Image", 0)cv2.imshow("Image",img_dst)cv2.imwrite('Image.png',img_dst)#照片保存cv2.waitKey(0)#---第5步:调用main函数--- if __name__ =='__main__':main()效果展示
描绘啦四个点后,点击enter 就可以啦
得到的图
当然也可以随意描点
电气专业的计算机萌新,写博文不容易,如果你觉得对你有哟用,请点个赞支持下,谢谢
总结
以上是生活随笔为你收集整理的python+opencv 给女朋友照片加上个性相框,学会等着她夸你。的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 开一家肥兔公社鲜兔火锅都需要做哪些准备呀
- 下一篇: python sklearn学习笔记大全