【学习笔记】一些基础

  • 建立docker 

 

sudo nvidia-docker run -ti --ipc=host --name=xxx --network=host -v /home/data/xxx:/workspace ce893

比如

import skimage.io as io
image = io.imread(image_dir).astype('float') 

这样得到的image是(h,w,c)的三通道格式

再tensor里默认的是(c,h,w)

需要image = image.transpose(2,0,1)

维度的扩展作用,比如(1,2,3)可插入的地方就有四个,分别是0,1,2,3。见缝插针的感觉。

IIn [44]: path,path_rgb
Out[44]:略


In [47]: img = Image.open(path)

In [48]: imgrgb = Image.open(path_rgb)

In [49]: img,imgrgb #由下面的mode,说明PIL库能识别灰度图和RGB图
Out[49]:
(<PIL.TiffImagePlugin.TiffImageFile image mode=P size=4288x2848 at 0x7F9CE709CB38>,
 <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4288x2848 at 0x7F9CE7093FD0>)

In [50]: img.size,imgrgb.size #但是PIL.Image的size只能查看(w,h)
Out[50]: ((4288, 2848), (4288, 2848))

In [51]: img1 = np.array(img)

In [52]: imgrgb1=np.array(imgrgb)

In [53]: img1.shape,imgrgb1.shape #用np.array强制转换成numpy格式后,灰度图就没有通道了分别是(h,w)和(h,w,c)
Out[53]: ((2848, 4288), (2848, 4288, 3))

In [54]: img2 = io.imread(path)

In [55]: imgrgb2 = io.imread(path_rgb)

In [56]: img2.size,imgrgb2.size
Out[56]: (36636672, 36636672)

In [57]: img2.shape,imgrgb2.shape #用io.imread来读取图片,可见无论是灰度还是RGB图片都转换成(h,w,c)的格式
Out[57]: ((2848, 4288, 3), (2848, 4288, 3))
  • tensor的加减乘除的重载就是对应位置的元素的加减乘除,如果不一致我遇到的问题是(batch-size,4,512,512)和(batch_size,1,512,512)之间运算,为了算一个f1_score。实验了一下运算就是在对应的batch里,4通道图片的每一个通道和1通道图片相运算(二维对应位置元素的运算)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值