APP下载

VisualC++在数字图像处理中的应用

2019-09-09王稳

数码世界 2019年6期
关键词:直方图图像处理算法

王稳

摘要:由于科技的飞速发展,数字图像处理技术已经在我们生活中得到了广泛的应用,并且在图像理解和计算机视觉等领域中起到很重要的作用。但是传统的图像处理技术或多或少都存在着问题,这也导致处理过的图像能提供的有用信息大大减少,因此如何通过提高这些技术内含的算法效果和运算速度就成为我们研究的目标。针对这个问题,提出以VisuaIC-I-+为联系纽带,通过编译c++语言,来得到图像处理技术算法的核心内容,由此来大幅度地提高运算效率,使处理过的图像更加清晰,为其他的实验研究提供可靠的素材。

关键词:数字图像处理VisualC++语言算法

引言

从古到今,图像在人类历史上一直都起到很重要的作用。在没有文字和语言的时代,人们靠图像来认知这个世界,并进行沟通交流。可以说,图像给人们提供的信息是比文字更为直观,让人理解的,因此即使在文字语言发展的今天,图像给人带来的视觉信息仍旧是不可或缺的。但是图像的清晰度和分辨率等参数特性直接决定了能提供的信息量,因此如何对图像进行处理,得到更为完善的信息内容就显得尤为重要了,这也是我们研究的目标和方向。

1数字图像处理的概念及内容

1.1数字图像处理的概念

数字图像是指用现代的计算机技术来对原有的图像进行细节上的处理以达到提取图像有效信息的目的。而数字图像处理技术在很久以前就有发展的迹象了,20世纪20年代,英国伦敦最先传输一幅照片至美国纽约,由于距离过远,普通的传输技术已经无法支撑如此长距离的运输路程,因此,这幅照片是经过数字压缩技术处理后才进行输送的,但那时候的技术无法对已经压缩过的图像进行信息的提取。直到50年代,人类科技的发展使得数字图像处理技术有了系统的研究,到70年代,数字图像处理已经有了一定的成果,形成了比较完善的体系。现如今,随着各个领域的深入研究,这门技术也在不断更新,有更为广阔的发展前景。

1.2数字图像处理的内容

数字图像处理是一个宽泛的处理手段,其具体的处理内容十分繁多,并不仅仅局限于图像的辨识处理。对于传统的图像处理来说,大多是将由于文件数据过大而进行压缩减小的图像进行重新的解压恢复,或者是提取完整图像中的某一部分进行加工,但这些都是基于图像原有的信息基础进行的,对于当前这个大数据时代,信息过于冗杂,没有一个很好的信息整合过程。但是随着近些年的信息技术的飞速发展,已经有诸如图像融合、特征分析等技术出现,这些技术是具有智能化特征,能更好地对图像进行理解分析,某种程度上可以说达到了人脑的处理结果。这也是在传统的图像处理技术上进一步发展的成果,因此现如今成熟的数字图像处理技术包括以下几个方面:①图像数字化;②图像变换;③图像增强;④图像恢复;⑤图像数据压缩;⑥图像边缘检测;⑦图像分割;⑧图像特征分析;⑦图像配准;⑩图像融合。当然信息科技下的社会还会有图像分类,图像识别,基于内容的图像检索等手段,针对知识产权保护方面,还拥有图像数字水印这类的数据安全保护措施。

2 VisuaIC++语言在图像处理中的作用

2.1关于MATLAB工具箱的介绍

目前在各个领域的应用中,关于图像处理方面主要有以下两种模式:一个是基于MATLAB数字图像处理工具箱的模式。另一种即为基于VisualC++语言的模式。这两种模式各有利弊,对于MATLAB来说,这是一款数学软件,由美国产出,主要用于商业计算的,它也是通过内部的算法来实现各种数字处理功能,对于图像处理而言,在利用MATLAB进行操作时,其基本的运行过程是通过数组的形式来实现的,而数组是C语言的一项重要内容,把图像中的基本参数如颜色,光泽度等用数组的形式表达出来,之后在MATLAB中运用算法对这些数组进行多种多样的变换处理,得到新的数组,然后再把这些数组还原成图像中的参数,这样即实现了数字图像处理。

2.2 VisuaIC++语言与MATLAB的融合作用

对于完全基于c/c++语言的模式来说,可以避免由于C语言的不可移植性带来的处理过程中的麻烦,因为c++语言的基本代码是统一的,在可理解性方面是强于C语言的。算法的逻辑性思维比较清晰,在跨区域使用时,不会因为无法辨别而带来数据上的错误,可用于实际的图像处理应用中。但是该模式需要大量代码的输入输出来支撑不同格式图片下的处理,这是比较繁重的工作,对人力负担较重。因此基于以上两种模式的优缺点,可以将两种模式融合使用,用c++语言来替代MATLAB软件中的纯编译性质的C语言, 延续MATLAB软件中图像格式处理模式,内部的核心算法用C++语言来编写,这样充分发挥MATLAB和C++语言的优势,降低了可操作性的难度系數,应用性较强。

3 VisuaIC++语言在图像处理中的应用实例

VisualC++语言的应用范围很广-在图像处理中主要是结合着MATLAB这款软件起作用,之前提到过的几种功能都可以结合着Visual语言来实现。

3.1图像变换

图像变换的定义从广义上来说,是将原有的图像变换成加工后的新图像,从微观的角度看,只是数据的变化,原有的图像参数转化成的空域数据在经过加工后得到新的定义数据,这一系列的操作是通过函数来实现的,可视为数学问题,函数变化在数学上是很普遍的操作,把原本不易识别的数据通过C++语言的描述变成可辨识的数据语言,最具代表性的就是傅里叶变换。

3.2直方图均衡化

直方图在数学上的应用上主要是统计方面的内容,统计学应用图像来表达已有的信息比直接的数据更加直观,但是直方图在绘制时,需要考虑的因素较多,像间距等必须要合适才能反映出该有的数据特征。因此直方图均衡化就是输入已有的绘制好的直方图,经过函数中内嵌的VisualC++语言的加工使其成为均匀分布的直方图,这样反应出来的数据特征才最为明显,增强图像的信息可利用度,这也是在实验中经常使用的纠正有偏差的直方图的措施手段之一。

4 VisuaIC++语言的应用前景

当前社会对于图像处理的手段已经日趋成熟,数字图像处理更是成为许多领域进行数据分析必不可少的一个过程像生物医学方面,人们利用图像处理得到关于人体检测报告的相关数据.更加有利于医生对于病情的诊断,保证患者生命安全。在航空航天方面,图像处理技术可以保证飞行设施的方向准确性,及时传回数据,和信息转换站保持联系。另外从安全应用角度来考虑的话,数字图像处理技术可以帮助对于指纹和相关的犯罪痕迹进行鉴定和分析,更快地抓到犯罪分子,保障社会稳定与安全。

5结束语

综上所述,随着社会科学发展的进步性,数字图像处理技术应用的广泛性,将VisualC++语言合理地嵌合至应用技术中,可以提高算法运行效率,优化算法运行过程,提高图像的各种性质参数,使其能够提供更多的信息,为后续的实验过程提供有效的数据理论。

参考文献

[1]江巨浪,黄忠,纪娟娟,“数字图像处理”实验教学设计[J]安庆师范学院学报(自然科学版),2015,21(3):114-116.

[2]赵洁,张艳,武斌,实验案例教学法在数字图像处理课程教学中的应用[J]天津城市建设学院学报,2013,19(3):231-234.

[3]仲会娟,数字图像处理实验教学软件设计[J],安阳工学院学报,2015,14(6):45-48.

猜你喜欢

直方图图像处理算法
“课程思政”视域下职业学校《图像处理》课程教学改革实践
构建《Photoshop图像处理》课程思政实践教学路径的探索
基于图像处理与卷积神经网络的零件识别
Travellng thg World Full—time for Rree
用直方图控制画面影调
基于新一代信息技术的Photoshop图像处理课程开发与建设
例析频率分布直方图
学习算法的“三种境界”
算法框图的补全
算法初步知识盘点