• 图像智能处理黑科技,让图像处理信手拈来


    0. 前言

    计算机视觉 (Computer Vision, CV) 通过研究如何令机器“看懂”世界,构建从图像中获取信息的人工智能系统,是人工智能领域的一个重要分支。计算机视觉具体而言是指,利用计算机代替人眼对目标进行识别、跟踪和识别等,通过对图像进行处理,使其更适合人眼或计算机检测。因此,图像智能处理技术在计算机视觉中发挥着重要作用。

    1. 图像智能处理简介

    图像智能处理是指利用计算机对各种复杂应用场景的图像进行自动化处理和分析,是计算机视觉领域中重要的技术领域。通过为机器视觉系统添加图像智能处理功能,等于为机器安装上了智能的“眼睛”,令机器看得清、看得懂,以接近甚至超越人眼的能力执行分析与处理任务。
    但是,如所有计算机技术一样,作为一门实践性很强的学科,我们不必要从头开始“造轮子”,本文的目标是令我们能够将图像智能处理快速集成到项目开发中,从而专注于使用这些工具创造新价值。
    合合信息是行业领先的人工智能集大数据科技企业,通过在智能文字识别和商业大数据领域的积累的优势,提供了行业领先的计算机图形图像技术,其研发的智能图像处理引擎提供多种图像智能处理黑科技,例如图像切边增强、PS 检测、图像水印去除以及图像矫正等,还有更多图像智能处理黑科技,可以参考合合信息官网。其解决了影像采集不规范问题,能够极大的优化影像质量,为项目后续的图像处理奠定基础。

    合合信息
    本文将带领大家一窥合合信息图像智能处理的主要黑科技技术,并通过示例演示如何将其应用于实际的项目实践中。

    2. 图像切边增强

    文档数字化是保存文献、文档的一种重要方式,随着移动摄像头日益增多,拍摄物理文档成为一种便捷的文档扫描方式,拍摄完成后,可以对图像进一步进行处理,实现内容分析和信息提取。但文档拍摄由于弯曲、旋转、折叠,或者位于复杂背景之上导致扫描结果并不理想,如下图所示。
    文档拍摄存在问题
    目前,较为先进的模型采用 U-Net 作为基础模型,它使用全卷积网络作为主干网络,并包含一系列的下采样层和上采样层,网络架构如下图所示。
    DocUnet
    获取带有标签的海量数据是深度监督学习面临的首个挑战。为训练网络,我们使用大量具有不同扭曲程度的文档图像及相应的变形图像作为输入,但这些数据集难以获取,为了获取真实的变形标签图,需要使用平整文档进行随机扭曲合成数据集。
    训练数据集获取

    图像切边增强是指令计算机智能判断照片中主体文档的边缘进行切边,同时增强图像突出文字,支持识别背景复杂的文字内容,返回文字信息及文字的位置信息、行置信度、单字符内容和位置等,体验地址:合合信息图像切边增强

    图像切边增强
    通过以上结果可以看出,图像切边增强不仅可以可以裁切图像主体区域,同时也能够对主体区域的图像质量进行增强,既能更好的对主题区域进行展示,还能够提高下游任务( OCR 识别、信息识别等)的准确率,在票据识别、文本转录等场景下具有很高的实用价值。

    3. PS 检测

    PS 作为一款图像处理软件,图像处理效果十分精确,其这一特点不仅为我们的生活提供了极大的便利,也会被“有心之人”利用,例如伪造发票、请假条等。
    图像 PS 痕迹检测可以使用视觉线索和压缩伪影两种依据来判断图像是否被篡改:视觉线索即像素之间的关系;而压缩伪影特指 Jpg 压缩所用的 DCT 矩阵。以下网络架构是一种多分辨率融合网络,其融合了多个尺度的特征,可以利用图像的低维特征,对于图像 PS 痕迹检测具有极大优势。

    PS检测架构

    基于行业领先的自研篡改检测系统,合合信息的 PS 检测系统可判断图片是否被篡改,支持身份证、护照、行驶证、驾驶证、港澳通信证等证照类别,及增值税发票、普通发票、小票、合同等文档类别,让一切伪造凭证无所遁形,体验地址:合合信息 PS 检测

    PS 检测
    在上图中,可以看出即时对于人眼而言无法察觉的微小 PS 修改痕迹,利用合合信息的 PS 检测系统的“火眼金睛”仍然可以准确的让其原形毕露。

    4. 图像水印去除

    图像凭借其直观、易生产、传播成本低的特点在诸多信息的传播方式中成为了互联网信息传播的首选方式,而图像水印作为图像版权保护的重要方式在互联网中得到了极为广泛的应用。但是,作为用户,有时过度叠加的水印对我们的冲浪体验造成了极大的不便,相信许多小伙伴都在网上见过叠加了一层又一层水印的图片,并对其深恶痛绝。

    图像水印
    图像水印去除问题可以看作是一个从图像到图像的转换问题,即将带水印的图像转换为无水印的图像。我们同样可以基于全卷积网络来搭建图像水印去除模型,以实现这种图像到图像的转换。以下全卷积网络的输入是带水印的图像区域,经过多层卷积神经网络处理后输出无水印的图像,网络模型的目标是令网络输出的无水印图像能够和原始的无水印图像尽可能的接近。

    网络架构

    合合信息图像水印去除支持对图片中日期、logo、文字等形式的水印进行自动擦除,确保高保真处理,无痕还原图片素材,体验地址:合合信息图像水印去除

    图像水印去除可以看到水印去除的效果超出预期,即使是图像中的色彩以及细小的线条都可以得到完好的保留,而不是简单的对水印进行淡化涂抹,而且水印去除功能还支持去除 pdf 格式的文件,这对于大多数用户而言简直是福音,再也不用打印出带有浓厚颜色甚至影响阅读的电子版课件了。

    5. 图像矫正

    在日常生活与工作中我们通常使用纸质文档承载大量有用的信息,随着移动智能手机、便携相机等设备的逐渐普及,我们通常通过拍照实现纸质文档的数字化。文档数字化实现了纸质文档的存档、检索、共享、识别与分析等处理,为我们日常的工作与生活带来了极大的便利。但由于相机的姿态、文档放置状态、文档自身变形等不确定因素,在使用移动设备采集文档照片时会出现角度和弯曲变形,这些原始的照片对于文档图像内容的自动提取与分析造成了不利影响,因此需要进行一定的变形矫正处理。

    偏移图像
    针对现有用于图像矫正深度学习模型空间泛化性差、模型参数量大、推理速度慢等问题,目前一般采用轻量化文档姿态估计网络,用于透视变形文档图像的姿态估计处理,称之为 DPENet (Document Pose Estimation Network)。利用 DPENet 网络将文档图像中的单一文档视为一个姿态估计对象,将文档的四个角点视作文档对象的四个姿态估计点,结合当前主流的姿态估计模块 DSNT 实现了文档图像角点的高精度定位,并通过透视变换处理实现了透视变形的高精度矫正处理。

    DSNT

    合合信息图像矫正可以智能定位图像中文档主体的边缘,并进行背景切除 (文档提取),对形变文档进行矫正,主要包括角度矫正和弯曲矫正两种复杂的矫正,体验地址:合合信息图像矫正

    图像矫正
    可以看到利用合合信息图像矫正功能能够将图像恢复至正面垂直拍摄的效果,解决了文档图像变形矫正算法抗干扰性差、矫正效果不佳等问题。

    6. 图像去屏幕纹

    智能手机,数码相机等设备为我们提供了快速记录信息的机会,已经逐渐成为人们日常生活中必不可少的工具。但是,使用数码相机拍摄数字屏幕时会在照片中会出现令人反感的屏幕纹。屏幕纹的存在不仅严重降低了图像的质量,并且也会影响到我们后续的分析和处理。

    摩尔纹
    同时,由于屏幕纹对重复结构的轻微变换具有极度敏感性,因此图像结构的多样性导致屏幕纹也具有复杂性和不规则性,屏幕纹的消除一直以来都是具有极具挑战性的任务。传统高斯、双边等滤波方式对屏幕纹的抑制效果不佳,而专门针对屏幕纹消除的工作目前仍然较少。不同于取噪点或去马赛克等图像修复问题,由于摩尔纹在频率、形状、颜色等方面的巨大变化,从被摩尔纹扰动的图像中恢复出原始干净图像仍然是一个未解决的问题。
    针对这以问题许多研究试图通过多尺度设计来消除不同频段的摩尔纹。DMCNN 提出使用具有多分辨率分支的多尺度 CNN 处理摩尔纹图案,并对不同尺度的输出求和以获得最终输出;MDDM 通过引入基于动态特征编码器的自适应实例规范化改进了 DMCNN。而最新的 MopNet 则使用多尺度特征聚合子模块来处理复杂频率;同时在不同尺度之间采用渐进式上采样策略以平滑地提高分辨率。

    图像去屏幕纹网络架构

    合合信息图像去屏幕纹支持去除因拍屏幕产生的各种纹理(屏幕纹、摩尔纹),还原清晰真实图像,体验地址:合合信息图像去屏幕纹

    图像去屏幕纹
    可以看到合合信息图像去屏幕纹功能能够高效的完成图像恢复任务,最大程度的恢复被屏幕纹污染的屏摄照片,能够去除所有样式的屏幕纹,并且能够保证图片细节信息完整,便于我们后续对图像进行进一步的分析。

    7. 调用图像智能处理 API

    感受了合合信息图像智能处理引擎的强大之后,我们当然迫不及待的想将其应用到项目实践中去,合合信息提供了丰富的图像智能处理 API,支持 curlJavaC#PythonPHPNode.js等多种编程语言,并且提供了详尽的 API 功能描述与使用示例,方便我们将其应用于项目中去。

    API调用
    Python API 为例,调用合合信息图像智能处理的代码非常简单方便:

    import requests
    import json
    
    def get_file_content(filePath):
        with open(filePath, 'rb') as fp:
            return fp.read()
    
    class CommonOcr(object):
        def __init__(self, img_path):
            # 登录后前往 “工作台-账号管理-开发者信息” 查看 x-ti-app-id
            self._app_id = 'f5..................5e4'
            # 登录后前往 “工作台-账号管理-开发者信息” 查看 x-ti-secret-code
            self._secret_code = '7...............4cafa'
            self._img_path = img_path
    
        def recognize(self):
            # 图片切边增强
            url = 'https://api.textin.com/ai/service/v1/crop_enhance_image'
            head = {}
            try:
                image = get_file_content(self._img_path)
                head['x-ti-app-id'] = self._app_id
                head['x-ti-secret-code'] = self._secret_code
                result = requests.post(url, data=image, headers=head)
                return result.text
            except Exception as e:
                return e
    
    if __name__ == "__main__":
        response = CommonOcr(r'download.jpeg')
        print(response.recognize())
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31

    小结

    依托于合合信息旗下强大的技术支撑,其研发的智能图像处理引擎不仅能够满足项目中常见的图像处理需求,同时其完善的文档支持也能够帮助我们快速部署应用高效的图像处理功能。本节中,介绍了合合信息图像智能处理的主要黑科技,包括图像切边增强、PS 检测、图像水印去除、图像矫正和图像取屏幕纹等,同时也了解了这些黑科技的重要特点,在今后的项目实践中可以根据实际需要合理选用,极大的提高应用程序的性能与效率。

  • 相关阅读:
    简单记录一下在java的Mybatis-plus中用一个SQL语句查询一个嵌套的实体类(实体类中有List,List中还有List)
    KVM
    故障分析 | MySQL Router:服务器后端那么闲,为什么不让访问?
    JAVA爱音乐网站计算机毕业设计Mybatis+系统+数据库+调试部署
    用最少数量的箭引爆气球(Java)
    PHP 8.1性能基准测试结果出炉,比7.0版本提升44%
    python在线办公自动化oa系统django408
    DLL注入——使用全局钩子
    微生物共现网络可视化:实现布局自由
    项目安全性与权限管理实践与探讨
  • 原文地址:https://blog.csdn.net/LOVEmy134611/article/details/127482903