图片二值化工具

版权声明: https://blog.csdn.net/leida_wt/article/details/79132136

通常直接拍摄书籍纸张总是灰乎乎的,应用opencv自适应阈值二值化可以很方便的将照片转化为清晰的二值化照片,打印出来也不会是黑的,代码如下:

#! python2
# -*- coding:utf-8 -*-
import numpy as np
import cv2
import sys
import os


def handle(imgDir):
    name = imgDir.split(".")[0]
    fmt = imgDir.split(".")[1]
    img = cv2.imread(imgDir, 0)
    # img = cv2.medianBlur(img, 5)  # 中值滤波
    # 自适应阈值二值化
    img = cv2.adaptiveThreshold(
        img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 5, 2)
    img = cv2.medianBlur(img, 5)  # 中值滤波
    #cv2.imshow("img", img)
    cv2.imwrite(name + "_cv." + fmt, img)
    print imgDir + " process successfully!"


for arg in sys.argv:
    print arg
    if arg.split(".")[1] not in ["py", "exe"]:
        try:
            handle(str(arg))
        except:
            print "process " + arg + " failed!"

os.system('pause')

效果

这里写图片描述
这里写图片描述

可直接拖拽想要转换的图来启动,会把转换的图片加_cv后缀保存到原地址处,通过pyinstaller打包成exe就可以跨平台了

猜你喜欢

转载自blog.csdn.net/leida_wt/article/details/79132136