Python图片的存储形式详解

Python读取图片代码如下: 

w = 6
h = 5
c = 3


def read_img(path): 
    cate = [path + x for x in os.listdir(path) if os.path.isdir(path + x)]
    print(cate)

    imgs = []  
    labels = []  
    for idx, folder in enumerate(cate):  
        for im in glob.glob(folder + '/*.jpg'):  
            # print('reading the images:%s' % (im))  
            img = io.imread(im)  
            img = transform.resize(img, (w, h))  # 利用transform.resize函数对每张img图像进行大小缩放,统一处理为大小为w*h(即100*100)的图像
            # print("img:",img)
            imgs.append(img)  
            labels.append(idx) 
    print(imgs[0])
    with open("imgs.txt","w") as f:
        f.write(str(imgs[0]))
        print("over")

read_img(path)

图片数值显示如下: 

[[[0.63267974 0.62875817 0.64836601]
  [0.56977124 0.57058824 0.52647059]
  [0.6879085  0.69575163 0.66633987]    (1)
  [0.58104575 0.58496732 0.56143791]
  [0.65637255 0.65245098 0.67205882]]

 [[0.4622549  0.45441176 0.40735294]
  [0.5127451  0.50980392 0.44068627]
  [0.58676471 0.56617647 0.24019608]    (2)
  [0.64215686 0.65147059 0.56715686]
  [0.58480392 0.58480392 0.57696078]]

 [[0.5627451  0.5627451  0.56666667]
  [0.53316993 0.52745098 0.35882353]
  [0.39052288 0.42973856 0.03545752]    (3)
  [0.68872549 0.68349673 0.20588235]
  [0.54003268 0.54395425 0.52042484]]

 [[0.63218954 0.63415033 0.65964052]
  [0.48022876 0.48153595 0.33104575]
  [0.44493464 0.44313725 0.025     ]    (4)
  [0.58627451 0.55637255 0.08366013]
  [0.52761438 0.52761438 0.49624183]]

 [[0.47058824 0.47058824 0.45098039]
  [0.56911765 0.57401961 0.55196078]
  [0.40931373 0.39558824 0.175     ]    (5)
  [0.47892157 0.47156863 0.37205882]
  [0.53382353 0.53382353 0.53382353]]

 [[0.53954248 0.53954248 0.56111111]
  [0.62843137 0.63235294 0.65392157]
  [0.72124183 0.73300654 0.75882353]    (6)
  [0.71797386 0.72973856 0.75718954]
  [0.4870915  0.48120915 0.47696078]]]
                       w    h   RGB通道数
shape of data: (3670, 100, 100, 3)

可见每行有3列代表有3通道RGB颜色数值

例如(1)块 ,一组有5个行,代表5个单位的高度(列)(按此推测,这一组数据是图片的第一列的数值)

例如有(1)(2)(3)..(6)有6个大组,代表6个单位的宽度(行)(是图片的第一行的数据)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值