图像智能处理黑科技,让图像处理信手拈来(代码片段)

盼小辉丶 盼小辉丶     2022-12-08     448

关键词:

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

0. 前言

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

1. 图像智能处理简介

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


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

2. 图像切边增强

文档数字化是保存文献、文档的一种重要方式,随着移动摄像头日益增多,拍摄物理文档成为一种便捷的文档扫描方式,拍摄完成后,可以对图像进一步进行处理,实现内容分析和信息提取。但文档拍摄由于弯曲、旋转、折叠,或者位于复杂背景之上导致扫描结果并不理想,如下图所示。

目前,较为先进的模型采用 U-Net 作为基础模型,它使用全卷积网络作为主干网络,并包含一系列的下采样层和上采样层,网络架构如下图所示。

获取带有标签的海量数据是深度监督学习面临的首个挑战。为训练网络,我们大量具有不同扭曲程度的文档图像及相应的变形图像作为输入,但这些数据集难以获取,为了获取真实的变形标签图,需要使用平整文档进行随机扭曲合成数据集。

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


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

3. PS 检测

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

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


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

4. 图像水印去除

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


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

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

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

5. 图像矫正

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


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

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


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

6. 图像去屏幕纹

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


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

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


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

7. 调用图像智能处理 API

感受了合合信息图像智能处理引擎的强大之后,我们当然迫不及待的想将其应用到项目实践中去,合合信息提供了丰富的图像智能处理 API,支持 curlJavaC#PythonPHPNode.js等多种编程语言,并且提供了详尽的 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())

小结

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

图像处理黑科技——弯曲矫正去摩尔纹切边增强ps检测

...提供创新的数字化、智能化服务。合合信息提供的文字与图像处理黑科技已经不知不觉地影响了我们生活的方方面面,让我们来深入介绍一下那些你不曾注 查看详情

4个老司机常用的黑科技资源网站

...般,一闪一闪并且还模糊的效果,尽显黑科技。2、电脑图像工具箱电脑图像工具箱是一款拥有70多个图片处理编辑功能的精品软件。它支持图片微处理,动画制作,图像转换,图像浏览,图像捕捉功能,其中比较实用的功能有:... 查看详情

智能车竞赛技术报告|智能车视觉-西南科技大学-西科二队(代码片段)

...。以MT9V034摄像头为核心传感器,通过摄像头采集道路图像信息送入单片机,在单片机中对输入的原始图像信息进行处理,判断赛道元素,据此对舵机进行打角控制和电机进行速度控制。整个系统设计包括了车 查看详情

unet网络实现叶子病虫害图像分割(代码片段)

...)智能化农业作为人工智能应用的重要领域,对较高的图像处理能力要求较高,其中图像分割作为图像处理方法在其中起着重要作用。图像分割是图像分析的关键步骤,在复杂的自然背景下进行图像分割,难度较大。在... 查看详情

步入aigc时代,展望人工智能发展(代码片段)

...业行——走进合合信息2.1活动介绍2.2走进合合信息3.文档图像处理中的底层视觉技术3.1什么是底层视觉3.2智能图像处理技术3.3智能图像处理技术综合应用4.图文智能处理与多场景应用技术进展4.1生成式人工智能与元宇宙4.2面向图... 查看详情

智能车浅谈——图像篇(代码片段)

...本含义图像类型数字图像彩色图像灰度图像黑白图像小结图像处理图像压缩二值化固定阈值法大津法图像降噪(腐蚀)寻边线总结前言前面已经记录了智能车硬件系统、方向控制以及电机控制,今天接着记录一些有关... 查看详情

智能车数字图像处理算法入门及c语言实现(代码片段)

...二值化数据示例大津阈值法代码实现图像二值化代码实现图像处理找中线代码实现完整实现优化求车身横向偏差方向PD控制图像简单处理附 查看详情

智能车竞赛技术报告|智能车视觉-中南林业科技大学-弃车人队(代码片段)

...车对赛道信息的采集速度,本文提出了一种直接处理图像灰度值的方法:对获取到的图像每一行进行遍历,并求得每一行中相邻像素点灰度值的差比 查看详情

[python图像处理]四十三.python图像形态学处理万字详解(腐蚀膨胀开闭运算梯度顶帽黑帽运算)(代码片段)

该系列文章是讲解PythonOpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应... 查看详情

智能车竞赛视觉ai组总结西南科技大学–西科二队(代码片段)

...提供了极高的可玩性,实测使用八邻域算法处理原始图像并获得偏差只需要0.3ms。可以很快实现自己的想法而不是将时间用来解决数组定义多或者处理时间太长需要优化代码等。为了实现识别任务,我们最开始是准备加上... 查看详情

第十六届智能车比赛全向组图像处理程序解析(代码片段)

GPNU_XOR_Image第十六届广技师全向组从机图像处理程序解析2021.07.24:本文是对我个人(大三下学期时写的)图像程序的解析,希望能为后人所用,祝你们智能车比赛取到应得的成绩。文章目录GPNU_XOR_Image一、介绍... 查看详情

数字图像处理—学习总结(代码片段)

VC++数字图像处理杨淑滢本文对该老师的代码进行总结,代码小白顺便补充一下自己比较困惑的知识点,方便后续复习。对于BMP格式的图像结构分为以下四个部分:位图文件头结构BITMAPFILEHEADER位图信息头结构BITMAPINFOHEADER位图颜色... 查看详情

图像处理(代码片段)

1.前言本篇浅谈一下图像处理包括调节亮度、灰度处理以及模糊处理。图像处理一般用于平面模型特殊要求处理,但主要用于屏幕后处理,屏幕后处理一般采用OnRenderImage方法进行。主要图像处理参考文献为六种灰度计算方法文章... 查看详情

opencv图像处理入门(代码片段)

😊😊😊欢迎来到本博客😊😊😊本次博客内容将继续讲解关于OpenCV的相关知识🎉作者简介:⭐️⭐️⭐️目前计算机研究生在读。主要研究方向是人工智能和群智能算法方向。目前熟悉python网页... 查看详情

css更改黑/白图像(代码片段)

查看详情

python人工智能-图像识别(代码片段)

...t库。PIL:(PythonImagingLibrary)是Python平台上的图像处理标准库,功能非常强大。pytesseract:图像识别库。我这里使用的是python3.6,PIL不支持python3所以使用如下命令pipinstallpytesserac 查看详情

事件和异常的传播·农场主的黑科技.(代码片段)

...inbound事件,以他为例了解inbound事件的传播SimpleInBoundHandler处理器何为inBound事件以及ChannelInboundHandlerChannelHandler的继承关系ChannelInboundHandlerAdapter,ChannelOutboundHandlerAdapter.用户代码中常见.平时自定义channelHandler时都会继承与他们ChannelH... 查看详情

国庆出游神器:魔幻黑科技换天造物,让vlog秒变科幻大片!(代码片段)

...是人人人、车车车,该怎么办?不妨试试这个黑科技,让你的出游vlog秒变科幻大片。本文分享自华为云社区《国庆出游神器,魔幻黑科技换天造物,让vlog秒变科幻大片!》,作者:技术火炬手。国... 查看详情