0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

图像处理技术入门

jf_78858299 来源:算法与编程之美 作者: 马原涛 2023-02-08 11:04 次阅读

基本介绍

图像增强技术的作用,简单点说,就是通过对图像进行加工处理,使图像能更好的在其他领域起作用,比如人脸识别,图像分类等人工智能领域,又或者是在通信领域,通过加工恢复图像在传输中丢失的某些东西。

那么什么又是图像增强呢?通过对图像进行一些加工,从简单的裁剪、变换灰度等到复杂的各种滤波公式去噪点等等 ,大致满足以下两点的都属于图像增强的一部分。

1.改变图像视觉效果,使其能更好的应用在某类场景中

2.突出图片某部分特征,满足某些特殊分析的需要。

在实现具体算法,我们总需要先思考大致的思路。学习图像增强技术也是如此,在学习这门新技术前,我们可以根据一些以往的经验先想想大概要做些什么。

  1. 图像的收集
  2. 图像的输入
  3. 图像的处理
  4. 图像的输出

图像的收集

这里主要涉及的是从视频中截取我们需要的图片。需要使用到的软件“ffmpeg”。

安装

通过网页搜索直接进入官网点击“Download”,选择自己电脑系统后,点击下方红色勾

选区域,进入下载界面,只用看自己电脑是64位/32位,点击下载。

下载好后,配置环境变量。

右键‘我的电脑’,--属性—高级系统设置—环境变量—用户变量—编辑‘path’—添加ffmpeg软件的文件夹下的bin文件的路径。

使用

通过‘cmd’命令行执行以下操作:

‘ffmpeg -i F -r K -f image2 image-%05d.jpg’

F:需要处理视频的地址。

K:填一个数字表示每秒截几张图,填类似1/1的形式表示一帧截一张图。

其他更详细用法可以自行百度,温馨提示:在哪个文件夹执行命令操作生成

的图片就保存在哪个文件夹。

图像的输入

很多时候我们需要处理的是大量的图片,这就需要批量的处理文件。

| #需要用到os和cv2库(安装请安装opencv,导入请导入cv2

imagelist=os.listdir(path)#读取path目录下所有文件的名字

for i in imagelist:

if(i.endswith('.jpg' or '.png')):

#如果文件以jpg或者png结尾image=cv2.imread(path+'/'+i)#读取图片

图像的处理

图像增强技术的处理技术很多,先从一些简单操作开始。如图像的裁剪、旋转、镜像翻转和缩放等基本操作开始,主要使用cv2库。

#裁剪(crop)

Image=cv2.imread(‘某张图片地址’) #读取图片

sp=image.shape #读取图像的形状信息并通过数组输出[图像的高,图像的宽,图像通道数]

h=sp[0]

w=sp[1]

#截取图像某个区域,可配合random库随机截取,也可以自己设置截取范围

y1=int((1/3)*h)

y2=int((2/3)*h)

x1=int((1/3)*w)

x2=int((2/3)*w)

img=image[y1:y2,x1:x2]

#将图片左上角视为原点,截取y1到y2、x1到x2的区域

#旋转(roating)

h,w=image.shape[:2]

center=(h//2,w//2)#旋转中心

#图片旋转

#degree旋转角度,size旋转后的大小,填1为等比例旋转。

M = cv2.getRotationMatrix2D(center, degree, size)

#执行旋转操作,roated为旋转后的图片

roated = cv2.warpAffine(image, M, (w, h))

#镜像翻转(flip)

image=cv2.imread(path)

image=cv2.flip(image,1)#图片翻转

#缩放

image=cv2.imread(path)

image=cv2.resize(image,(192,192))#括号内填缩放后的大小

图像的输出

除了直接保存为图片形式外

我们在使用这些处理后的图片时,更多的要用到名为“npz”的文件格式。

data=[]#该数组用于存储图片

label=[]#用于储存图片类型,看一个实例

pathone='D:\\imgCut\\Archive\\resize\\nosmoke'#无烟集图片地址

pathtwo="D:\\imgCut\\Archive\\resize\\smoke"#有烟集图片地址

#0代表无烟图片,1代表有烟图片

def saveZ(pathone,pathtwo):

data=[]

label=[]

imagelist_one=os.listdir(pathone)#读取目录下所有文件的名字

imagelist_two=os.listdir(pathtwo)



for i in imagelist_one:

   

    if(i.endswith('.jpg' or '.png')):

            #如果文件以jpg结尾

        image=cv2.imread(pathone+'\\\\'+i)

        data.append(image)#将图片加入数组,这里存入的是图片本身而不是一个引用。

        label.append(0)

       

for i in imagelist_two:

   

    if(i.endswith('.jpg' or '.png')):

            #如果文件以jpg结尾

        image=cv2.imread(pathtwo+'\\\\'+i)

        data.append(image)

        label.append(1)

np.savez('arc.npz', data=data, label=label)

#文件以npz形式储存,里面有两个数组data,label

之后我们就可以在其他地方直接调用这个文件里的数组

arc=np.load('arc.npz')#导入这个文件data=arc['data']#读取里面的data数组和label数组label=arc['label']

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 图像处理
    +关注

    关注

    27

    文章

    1292

    浏览量

    56745
  • 人工智能
    +关注

    关注

    1791

    文章

    47279

    浏览量

    238499
  • 人脸识别
    +关注

    关注

    76

    文章

    4012

    浏览量

    81903
收藏 人收藏

    评论

    相关推荐

    零基础 图像处理

    今年读研,导师要我搞图像处理这方面,但我零基础,就买了本MATLAB图像处理宝典开始看,这样学行吗,唉。。。希望各位高手指导下引导我入门,谢
    发表于 07-05 09:32

    视频监控系统图像处理技术应用解析

    视频监控系统图像处理技术应用解析随着物联网和移动互联网技术的迅速发展,传统的IT架构逐渐云端化,计算资源和承载业务将进一步深度整合,在物联网和云计算汇聚的潮流中,视频监控
    发表于 09-23 15:00

    浅谈大数据视频图像处理系统技术

    浅谈大数据视频图像处理系统技术近年来,随着计算机、网络以及图像处理、传输技术的飞速发展,视频监控
    发表于 09-24 15:22

    计算机数字图像图像处理技术的发展前景

    计算机数字图像图像处理技术的发展前景 图像处理软件是处理图像
    发表于 09-24 15:24

    数字图像处理技术方法和应用

    图像,常用的图像处理方法有图像增强、复原、编码、压缩等。下面维视图像为您简单介绍一下数字图像
    发表于 11-18 11:45

    形态学图像处理综合示例_《OpenCV3编程入门》书本配套源代码

    《OpenCV3编程入门》书本配套源代码:形态学图像处理综合示例
    发表于 06-06 15:52 8次下载

    数字图像处理技术__PPT - 复件

    数字图像处理是信息学科一个重要的类别,可以和电子技术结合发展。数字图像处理技术__PPT - 复
    发表于 06-24 15:33 0次下载

    形态学图像处理综合示例_OpenCV3编程入门-源码例程

    OpenCV3编程入门-源码例程全集-形态学图像处理综合示例,感兴趣的小伙伴们可以瞧一瞧。
    发表于 09-18 16:55 0次下载

    数字图像信号处理及其图像传感技术的介绍

    的要求越来越高,提升监控图像的实用价值已经成为社会向整个监控行业提出的新要求,智能化和高清化更加加快了数字图像处理技术研发进程,图像信号
    发表于 10-13 17:13 17次下载

    图像处理技术是什么_图像处理技术现状和发展前景

    数字图像处理技术正在向处理算法更优化、处理速度更快、处理后的
    发表于 01-12 17:47 5.5w次阅读

    什么是图像处理技术

    图像识别中,图像质量的好坏直接影响识别算法的设计与效果精度,那么除了能在算法上的优化外,预处理技术在整个项目中占有很重要的因素,然而人们往往忽略这一点。
    的头像 发表于 08-31 10:13 4369次阅读
    什么是<b class='flag-5'>图像</b>预<b class='flag-5'>处理</b><b class='flag-5'>技术</b>

    机器视觉:图像处理技术图像增强技术

    对原始获取图像进行一系列的运算处理,称为图像处理图像处理是机器视觉
    发表于 10-20 10:17 1857次阅读
    机器视觉:<b class='flag-5'>图像</b><b class='flag-5'>处理</b><b class='flag-5'>技术</b>、<b class='flag-5'>图像</b>增强<b class='flag-5'>技术</b>

    医疗图像处理的关键领域及技术挑战

    医疗图像处理的最后一部分涉及对所获取信息的管理,包括用于图像数据存储、检索和传输的各种技术。制定了若干标准和技术,用于
    发表于 10-31 11:43 926次阅读
    医疗<b class='flag-5'>图像</b><b class='flag-5'>处理</b>的关键领域及<b class='flag-5'>技术</b>挑战

    图像处理怎么入门

    总之图像处理的基本思想还是要立足于图像本身,要深度到图像内部结构中,思维要灵活。我当时做本科毕设时,怎么也不知道图像和高维空间中的点之间有什
    的头像 发表于 01-08 09:51 398次阅读

    Workshop!图像处理和识别入门培训

    技术进行结合,做扩展应用。实践平台:本次动手实践主题我们将围绕“人工智能-图像处理和识别入门”来展开!并使用RT-Thread社区团队联合英飞凌打造的PSoC62
    的头像 发表于 03-20 08:34 294次阅读
    Workshop!<b class='flag-5'>图像</b><b class='flag-5'>处理</b>和识别<b class='flag-5'>入门</b>培训