在完成PYNQ环境搭建后(zynq7035单板创建PYNQ镜像V2.6),本文介绍如何在PS端进行图片缩放。
导入图片
进入jupyter后,使用updload,将图片导入到\192.168.2.99\xilinx\jupyter_notebooks中。
导入Bit文件
将工程文件夹impl_1中的.bit文件,改名为system.bit。将sources_1\bd\system\hw_handoff中的.hwh和.tcl文件,改名为system.hwh和system.tcl。下载bit文件时需要用到这三个文件,PS端运行程序暂时不用。
进行图片缩放
在jupyter中新建ipynb文件,点击New-Python3。
在jupyter中进行图片缩放流程如下:
- 导入库
- 读取图片并显示
- 缩小图片并显示
- 计算缩小图片所用时间
导入库文件
from PIL import Image
import numpy as np
from IPython.display import display
import cv2
进行图片格式转换
src = cv2.imread('2.jpg')
print(src.shape) //(288, 352, 3)
cv2.imwrite('2.png',src) //将jpg转换成png
读取图片并显示
创建图片对象
image_path = "2.png"
original_image = Image.open(image_path)
original_image.load()
input_array = np.array(original_image)
显示
input_image = Image.fromarray(input_array)
display(input_image)
原始图像大小
old_width, old_height = original_image.size
print("Image size: {}x{} pixels.".format(old_width, old_height)) //Image size: 352x288 pixels.
缩小图片并显示
图片缩小后大小28x28
resized_image = original_image.resize((28, 28))
显示缩小后图片
output_array = np.array(resized_image)
result = Image.fromarray(output_array)
cv2.imwrite('s2.png',output_array) //将缩小后图片保存
display(result)
检测缩小后图片尺寸
width, height = resized_image.size
print("Resized image size: {}x{} pixels.".format(width, height)) //Resized image size: 28x28 pixels.
计算缩小图片所用时间
%%timeit
resized_image = original_image.resize((new_width, new_height), Image.BILINEAR)
输出
100 loops, best of 3: 10.6 ms per loop
参考
https://github.com/Xilinx/PYNQ-HelloWorld
微信公众号:硬码农二毛哥