亲宝软件园·资讯

展开

Python opencv图片切分

jiangwei0512 人气:0

说明

之前下载来zip包的漫画,里面的图片都是两张一起的:

但是某些漫画查看软件不支持自动分屏,看起来会比较不舒服,所以只能自己动手来切分。

操作说明

Python有不少的库支持图片操作,其中比较著名的一个是OpenCV。

OpenCV是一个跨平台的计算机视觉库,Python下有它的接口实现。

Python默认不带OpenCV,所以需要先用pip下载:

OpenCV功能强大,这里用来做图片的切分其实是牛刀小试。

关于OpenCV的功能,这里不多介绍,有兴趣的可以找其它的资料。

为了在代码中使用OpenCV,首先需要import相关的库:

import cv2 # Should be install independently.

然后是读取图片:

img1 = cv2.imread(filename)

然后做切割:

    # shape[0]:height shape[1]:width shape[2]:channel
    # img[y0:y1, x0:x1] 0=(left up) 1=(right low)
    slice1 = img[0:height, width/2:width]

这里实际上就是指定图片框体,需要的两个值是左上角和右下角坐标,只是对应的方式有些诡异,不知道为什么要这样对应。

然后是回写图片:

    cv2.imwrite(getname(index1), slice1, [int(cv2.IMWRITE_PNG_COMPRESSION), 1])

此外,为了保证图片不会太大,还可以做些压缩:

    img = cv2.resize(img1, (0, 0), fx=compressratio, fy=compressratio, interpolation=cv2.INTER_NEAREST)

加载全部内容

相关教程
猜你喜欢
用户评论