图片二值化工具

本文介绍了一种使用OpenCV进行自适应阈值二值化处理的方法,该方法能够有效提高书籍扫描图片的质量,实现清晰的黑白效果。通过简单的Python脚本即可实现批量处理,并支持跨平台运行。
Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

通常直接拍摄书籍纸张总是灰乎乎的,应用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就可以跨平台了

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值