tensorlayer学习日志11_chapter4_4.5

第4.5节主要讲的是tl.prepro的图像操作,通过源码可以知道,tl.prepro主要还是在cv2的基础上进行的。

import cv2
import numpy as np
import tensorlayer as tl

image = cv2.imread('4.1_flower_original.jpg')

print('~~~~~~~~~图像大小~~~~~~~~')
shape_flower = image.shape
print(shape_flower)
sz1 = shape_flower[0] # height(rows) of image
sz2 = shape_flower[1] # width(colums) of image
sz3 = shape_flower[2] # the pixels value is made up of three primary colors
print( 'width: %d \nheight: %d \nnumber: %d' %(sz1,sz2,sz3))

print('~~~~~~~~~~图像的操作~~~~~~~~')

cv2.imshow('4.1_flower_original', image)


rotation = tl.prepro.rotation(image, rg=60, is_random=False, row_index=0,
	col_index=1, channel_index=2, fill_mode='nearest', cval=0.0)
cv2.imshow('4.1_flower_rotation', rotation)


crop = tl.prepro.crop(image, wrg=120, hrg=120, is_random=True, row_index=0,
	col_index=1)
cv2.imshow('4.1_flower_crop', crop)

flip = tl.prepro.flip_axis(image, axis=1, is_random=False)
cv2.imshow('4.1_flower_flip', flip)

shift = tl.prepro.shift(image, wrg=0.1, hrg=0.1, is_random=False, row_index=0,
	col_index=1, channel_index=2, fill_mode='nearest', cval=0.0)
cv2.imshow('4.1_flower_shift', shift)

shear = tl.prepro.shear(image, intensity=0.4, is_random=False, row_index=0,
	col_index=1, channel_index=2, fill_mode='nearest', cval=0.0)
cv2.imshow('4.1_flower_shear', shear)

zoom = tl.prepro.zoom(image, zoom_range=(0.6, 1.9), is_random=False, row_index=0,
	col_index=1, channel_index=2, fill_mode='nearest', cval=0.0)
cv2.imshow('4.1_flower_zoom', zoom)


cv2.waitKey()
cv2.destroyAllWindows()

输出如下:

~~~~~~~~~图像大小~~~~~~~~
(360, 360, 3)
width: 360 
height: 360 
number: 3
~~~~~~~~~~图像的操作~~~~~~~~

 

 书中的tl.prepro.flip有误,可能是版本不同造成的,所以还是要以文档的为准,文档地址:https://tensorlayercn.readthedocs.io/zh/latest/modules/prepro.html

猜你喜欢

转载自blog.csdn.net/weixin_42025210/article/details/81814243