快捷搜索:  

:如何给照片加相框(给女朋友照片加上个性相框)

讲解下如何给女朋友照片加上个性相框,学会让她夸你。

素材1
相框

python+opencv 给女朋友照片加上个性相框,学会等着她夸你

你的女朋友图

python+opencv 给女朋友照片加上个性相框,学会等着她夸你

代码

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_temp     cv2.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+opencv 给女朋友照片加上个性相框,学会等着她夸你

当然也可以随意描点

python+opencv 给女朋友照片加上个性相框,学会等着她夸你

作者:电气-余登武。

原文CSDN博文链接:

您可能还会对下面的文章感兴趣: