Ubuntu安装PyTurboJPEG库
引子
一、PyTurboJPEG介绍
说到PyTurboJPEG那一定要聊到TurboJPEG,那么说到TurboJPEG(libjpeg-turbo)那一定要聊到libjpeg,大名鼎鼎的libjpeg大家一定都听说过。libjpeg是一个广泛使用的 JPEG 图像压缩库,采用 C 语言开发。那么TurboJPEG呢,就是基于libjpeg的,优化了的高性能JPEG压缩库,并且它在压缩率和速度之间做了很好的平衡,采用了SIMD指令集(MMX,SSE2,NEON,AltiVec),来加速x86,x86-64,ARM和PowerPC系统上的JPEG压缩和解压缩。libjpeg-turbo的速度通常是libjpeg的2-6倍。凭借其高度优化的霍夫曼编码,libjpeg-turbo仍然可以大大超过libjpeg。在许多情况下,libjpeg-turbo的性能可与专有的高速JPEG编解码器相媲美。那么,PyTurboJPEG就显而易见,是在libjpeg-turbo的基础上套了一层python。
二、安装PyTurboJPEG
1、sudo apt-get install nasm
2、进入下载官网页面,网址https://sourceforge.net/projects/libjpeg-turbo/files/
下载2.0.x版本的libjpeg-turbo-2.0.2.tar.gz
3、tar -zxvf libjpeg-turbo-2.0.2.tar.gz
4、cd libjpeg-turbo-2.0.2
mkdir build
cd build
cmake -G"Unix Makefiles" ..
make -j8
make install
cp -rvf /opt/libjpeg-turbo/lib64/* /lib/
5、pip install PyTurboJPEG
三、测试代码
import cv2
from turbojpeg import TurboJPEG, TJPF_GRAY, TJSAMP_GRAY, TJFLAG_PROGRESSIVE, TJFLAG_FASTUPSAMPLE, TJFLAG_FASTDCT
jpeg = TurboJPEG()
# decoding input.jpg to BGR array
with open('input.jpg', 'rb') as in_file:
bgr_array = jpeg.decode(in_file.read())
cv2.imshow('bgr_array', bgr_array)
cv2.waitKey(0)