相思资源网 Design By www.200059.com
遇到这么个需求:把图片按照定义的patchsize切块,然后按照z轴顺序叠放小块,如下图(仅考虑灰度图像)
图片im,设size为(h,w),patchsize为(ph,pw),则处理后大小(为简化描述,假设可以整除)为(ph,pw,w*h/ph/pw)。
为简化描述,后面用h=300,w=300,ph=100,pw=100 为例,即处理后d=9。
numpy.reshape 的文档:点击打开链接
特别注意第三个参数 order,其默认取值为 order=‘C',表示最后一个维度的元素在reshape时优先重排位置。而order=‘F'时则相反,第一个维度的元素优先重排位置。
例子如下,得到的im2就是这么一个tensor
import cv2 import numpy as np im=cv2.imread('animal007.jpg',cv2.IMREAD_GRAYSCALE) h= 300 w= 300 patchsize=100 d=h*w/patchsize/patchsize print d #crop the image to h x w im=np.array(im[: h ,: w ]) #this gets wrong answer im_wrong1=im.reshape((patchsize,patchsize,-1)) im_wrong7= im.reshape((patchsize,patchsize,-1),order='F') im_wrong2=im.reshape(( h ,patchsize,-1)).reshape((patchsize,patchsize,-1)) im_wrong3=im.reshape((patchsize, w ,-1)).reshape((patchsize,patchsize,-1)) im_wrong4= im.reshape(( h ,patchsize,-1),order='F').reshape((patchsize,patchsize,-1)) im_wrong5= im.reshape(( h ,patchsize,-1),order='F').reshape((patchsize,patchsize,-1),order='F') im_wrong6= im.reshape((patchsize, w ,-1),order='F').reshape((patchsize,patchsize,-1),order='F') #this only works for h=w, i dont know why im2= im.reshape((patchsize, w ,-1),order='F').reshape((patchsize,patchsize,-1)) im2_0=im2[:,:,no] cv2.imwrite('im2_0.jpg',im2_0) no=4; imw=im_wrong1[:,:,no] cv2.imwrite('imw1_0.jpg',imw) imw=im_wrong2[:,:,no] cv2.imwrite('imw2_0.jpg',imw) imw=im_wrong3[:,:,no] cv2.imwrite('imw3_0.jpg',imw) imw=im_wrong4[:,:,no] cv2.imwrite('imw4_0.jpg',imw) imw=im_wrong5[:,:,no] cv2.imwrite('imw5_0.jpg',imw) imw=im_wrong6[:,:,no] cv2.imwrite('imw6_0.jpg',imw) imw=im_wrong7[:,:,no] cv2.imwrite('imw7_0.jpg',imw)
以上这篇在python2.7中用numpy.reshape 对图像进行切割的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无在python2.7中用numpy.reshape 对图像进行切割的方法的评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。