位置: IT常识 - 正文

图像处理——图像增强(图像处理入门)

编辑:rootadmin
图像处理——图像增强

推荐整理分享图像处理——图像增强(图像处理入门),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:图像处理图片素材,图像处理的一般流程,图像处理入门,图像处理百度百科,图像 处理,图像 处理,图像处理gui,图像 处理,内容如对您有帮助,希望把文章链接给更多的朋友!

🌞欢迎来到机器学习的世界  🌈博客主页:卿云阁

💌欢迎关注🎉点赞👍收藏⭐️留言📝

🌟本文由卿云阁原创!

🌠本阶段属于练气阶段,希望各位仙友顺利完成突破

📆首发时间:🌹2022年10月11日🌹

✉️希望可以和大家一起完成进阶之路!

🙏作者水平很有限,如果发现错误,请留言轰炸哦!万分感谢!

目录

🍈 图像亮度增强和降低

 🍉旋转

🍊水平镜像和垂直镜像

🍋高斯噪声

🥟其它图像增强的方法

🍟适用于项目的的整体代码

图像处理——图像增强(图像处理入门)

创作背景:

     最近在忙着两个YOLOv7项目,通过看大量的论文,发现很多的相关的论文都会在收集图像后进行图像的增强,本文将使用python中的opencv模块实现常见的图像增强方法。

            由于光照角度和天气等不确定因素,导致图像采集的光环境极其复杂;为了提高目标检测模型的泛化能力,本文采用了几种图像增强方法。

图像增强方法包括

图像亮度增强和降低水平镜像垂直镜像多角度旋转(90°̘,180°̘,270°̘)高斯噪声

此外,考虑到图像采集设备在图像采集过程中产生的噪声,以及设备或树枝晃动造成的拍摄图像模糊,在图像中加入方差为0.02的高斯噪声,进行运动模糊处理。

🍈 图像亮度增强和降低图像亮度。指数字图像中包含色彩的明暗程度,是人眼对物体本身明暗程度的感觉。图像亮度调节可以采用最简单的图像处理算法,通过常见的线性运算即完成亮度调节,这里我们让所有的像素点亮度值乘上一个增强系数 percetage,使得图像整体变亮或者变暗。# 变暗def Darker(image,percetage=0.9): image_copy = image.copy() w = image.shape[1] h = image.shape[0] #get darker for xi in range(0,w): for xj in range(0,h): image_copy[xj,xi,0] = int(image[xj,xi,0]*percetage) image_copy[xj,xi,1] = int(image[xj,xi,1]*percetage) image_copy[xj,xi,2] = int(image[xj,xi,2]*percetage) return image_copy# 明亮def Brighter(image, percetage=1.1): image_copy = image.copy() w = image.shape[1] h = image.shape[0] #get brighter for xi in range(0,w): for xj in range(0,h): image_copy[xj,xi,0] = np.clip(int(image[xj,xi,0]*percetage),a_max=255,a_min=0) image_copy[xj,xi,1] = np.clip(int(image[xj,xi,1]*percetage),a_max=255,a_min=0) image_copy[xj,xi,2] = np.clip(int(image[xj,xi,2]*percetage),a_max=255,a_min=0) return image_copy 🍉旋转

     本文使用opencv中的使用getRotationMatrix2D() 函数和warpAffine() 函数实现旋转原始图像,通过改变函数参数“angle”分别实现90°̘、180°̘、270°旋转。变换后的图像可以通过正确识别不同方位的目标来提高模型的检测性能。改变函数参数scal一个各向同性比例因子,根据提供的值向上或向下缩放图像。

# 旋转,R可控制图片放大缩小def Rotate(image, angle=15, scale=1): w = image.shape[1] h = image.shape[0] #rotate matrix M = cv2.getRotationMatrix2D((w/2,h/2), angle, scale) #rotate image = cv2.warpAffine(image,M,(w,h)) return image🍊水平镜像和垂直镜像

图像镜像(水平和垂直镜像)是通过opencv中的使用flip函数实现的,通过以图像的垂直线为中心变换图像的左侧和右侧来实现水平镜像。垂直镜像是通过以图像的水平中心线为中心变换图像的上下侧来实现的。

# 水平翻转def Horizontal(image): return cv2.flip(image,1,dst=None)# 垂直翻转def Vertical(image): return cv2.flip(image,0,dst=None)🍋高斯噪声

    本文使用NumPy中的可以产生符合高斯分布(正态分布)的随机数的 np.random.normal()函数。利用产生随机数的函数来对图像添加方差为0.02的高斯噪声。

def gaussian_noise(image, mean=0, var=0.02): # 添加高斯噪声 # mean : 均值 # var : 方差 image = np.array(image / 255, dtype=float) noise = np.random.normal(mean, var ** 0.5, image.shape) out = image + noise if out.min() < 0: low_clip = -1. else: low_clip = 0. out = np.clip(out, low_clip, 1.0) out = np.uint8(out * 255) return out🥟其它图像增强的方法# 放大缩小def Scale(image, scale): return cv2.resize(image,None,fx=scale,fy=scale,interpolation=cv2.INTER_LINEAR)# 平移def Move(img,x,y): img_info=img.shape height=img_info[0] width=img_info[1] mat_translation=np.float32([[2,0,x],[0,2,y]]) #变换矩阵:设置平移变换所需的计算矩阵:2行3列 #[[1,0,20],[0,1,50]] 表示平移变换:其中x表示水平方向上的平移距离,y表示竖直方向上的平移距离。 dst=cv2.warpAffine(img,mat_translation,(width,height)) #变换函数# 椒盐噪声def SaltAndPepper(src,percetage=0.05): SP_NoiseImg=src.copy() SP_NoiseNum=int(percetage*src.shape[0]*src.shape[1]) for i in range(SP_NoiseNum): randR=np.random.randint(0,src.shape[0]-1) randG=np.random.randint(0,src.shape[1]-1) randB=np.random.randint(0,3) if np.random.randint(0,1)==0: SP_NoiseImg[randR,randG,randB]=0 else: SP_NoiseImg[randR,randG,randB]=255 return SP_NoiseImg#模糊def Blur(img): blur = cv2.GaussianBlur(img, (7, 7), 1.5) # # cv2.GaussianBlur(图像,卷积核,标准差) return blur🍟适用于项目的的整体代码

       为了满足项目的使用,我对上述代码进行了了扩充,实现了对单个图片,单个文件夹和多个文件夹中多个图片的图像的增强,在这个过程中感谢高向军老师的帮忙。如果需要源码的可以加我的联系方式(qq:2171172506)代码书写不易,有偿获取哈。

本文链接地址:https://www.jiuchutong.com/zhishi/299039.html 转载请保留说明!

上一篇:yolov5部署+微信小程序前端展示(yolov5部署微信小程序)

下一篇:VUE-CLI/VUE-ROUTER

  • 如何找回qq好友(如何找回qq好友发的文件)

    如何找回qq好友(如何找回qq好友发的文件)

  • 惠普5225硒鼓型号(惠普cp5225打印机硒鼓)

    惠普5225硒鼓型号(惠普cp5225打印机硒鼓)

  • 华为手表有什么功能(华为手表有什么型号)

    华为手表有什么功能(华为手表有什么型号)

  • 手环怎么关机(运动手环怎么关机)

    手环怎么关机(运动手环怎么关机)

  • 淘宝称昵怎么修改(淘宝昵称如何修改)

    淘宝称昵怎么修改(淘宝昵称如何修改)

  • 钉钉高级认证和中级认证区别(钉钉高级认证和不认证的区别)

    钉钉高级认证和中级认证区别(钉钉高级认证和不认证的区别)

  • 素乐是小米旗下的吗(素乐是小米旗下的品牌吗)

    素乐是小米旗下的吗(素乐是小米旗下的品牌吗)

  • 华为nova6的智能遥控在哪里(华为nova6的智能助手)

    华为nova6的智能遥控在哪里(华为nova6的智能助手)

  • 手机号码注销话费能退吗(手机号码注销话费)

    手机号码注销话费能退吗(手机号码注销话费)

  • 华为一共出了几款保时捷手机(华为一共出了几款折叠屏手机)

    华为一共出了几款保时捷手机(华为一共出了几款折叠屏手机)

  • word2010段落底纹怎么设置(word2010段落底纹颜色怎么设置)

    word2010段落底纹怎么设置(word2010段落底纹颜色怎么设置)

  • ipad5thgen是哪一款(ipad 5是什么型号)

    ipad5thgen是哪一款(ipad 5是什么型号)

  • 荣耀20与v20一样吗(v20荣耀和荣耀20)

    荣耀20与v20一样吗(v20荣耀和荣耀20)

  • 华为鸿蒙什么时候上市(华为鸿蒙什么时候)

    华为鸿蒙什么时候上市(华为鸿蒙什么时候)

  • 手机怎么把照片转换成文字(手机怎么把照片p到另一张照片上)

    手机怎么把照片转换成文字(手机怎么把照片p到另一张照片上)

  • 饿了吗骑手年龄限制(饿了吗骑手年龄最大多少)

    饿了吗骑手年龄限制(饿了吗骑手年龄最大多少)

  • 韩剧tv怎么换线路(韩剧tv怎么换成国语呢)

    韩剧tv怎么换线路(韩剧tv怎么换成国语呢)

  • vivox27自带美颜功能吗(vivox27美颜调节在哪里)

    vivox27自带美颜功能吗(vivox27美颜调节在哪里)

  • vivo每天屏幕使用时间(vivo设置屏幕使用时间长)

    vivo每天屏幕使用时间(vivo设置屏幕使用时间长)

  • 手机录屏在哪里找(荣耀手机录屏在哪里)

    手机录屏在哪里找(荣耀手机录屏在哪里)

  • 电脑grub怎么解决(grub模式下清除密码)

    电脑grub怎么解决(grub模式下清除密码)

  • qq群发祝福在哪里打开(qq群发祝福在哪为什么我找不到)

    qq群发祝福在哪里打开(qq群发祝福在哪为什么我找不到)

  • win10帮助与支持在哪里?(window10的帮助与支持窗口在哪)

    win10帮助与支持在哪里?(window10的帮助与支持窗口在哪)

  • YunDetectService.exe是什么进程?YunDetectService.exe禁止使用的方法

    YunDetectService.exe是什么进程?YunDetectService.exe禁止使用的方法

  • 呕心沥血 JavaScript知识点梳理大全,超详细 建议收藏!!!(呕心沥血的历史人物)

    呕心沥血 JavaScript知识点梳理大全,超详细 建议收藏!!!(呕心沥血的历史人物)

  • 织梦实现列表页双样式和列表样式循环交替变化方法(织梦内容页模板修改)

    织梦实现列表页双样式和列表样式循环交替变化方法(织梦内容页模板修改)

  • 职工福利费的税额
  • 当期所得税费用可以是负数吗
  • 增值税专用发票抵扣最新规定
  • 分公司需要独立法人吗
  • 股票交易印花税降低
  • 短期借款的实际资金成本
  • 文件柜材质
  • 个人往对公账户上存款怎么存
  • 公司购买的打印机
  • 租金是含税的吗
  • 房地产公司预分红犯法吗
  • 企业接受捐赠的账务处理
  • 普票和专票的税率分别是多少
  • 30万以下免征附加税包含30万吗
  • 电子公章盖上去怎么文字看不到了
  • 分支机构能否随总机构认定为一般纳税人
  • 住房公积金是福利费吗
  • 企业有哪些项目名称
  • 在windows7是一种
  • 家具厂打磨工工作图片
  • 公司补缴印花税的后果
  • 企业存款利息收入要交哪些税
  • 收回应收账款会影响应收账款的账面价值吗
  • 当月费用下月付款怎么做账
  • 行政单位预付款已收到货物无发票
  • 哪些费用可以计入开办费
  • 前端数据统计图
  • php数组实现原理
  • 期间损益包括
  • 公债的本质是什么
  • 原始凭证和审计证据的关系
  • 采用公允价值模式计量的投资性房地产处置
  • 年度成本费用总额公式
  • 目标检测选SSD还是YOLO
  • jsp做登录界面
  • 前端分页显示
  • ip命令查看ip地址
  • 爬虫失败的原因
  • 增值税申报表中销售额
  • 帝国cms整合Elasticsearch
  • hadoop集群状态
  • python 邮件服务
  • 材料采购与原材料账户核算内容有何差别
  • 劳务派遣业务的特点
  • 退货开红字发票,已经交了消费税的怎么处理
  • odbc api
  • 新会计准则折旧年限
  • 发票普通发票
  • 不得从销项税额中抵扣的进项税额,不得计提加计抵减额
  • 房东减免部分房租
  • 小企业附加税减免政策
  • 有差价的商品发票怎么开
  • 固定资产进项税率
  • 计提应收会计分录
  • 长期股权投资如何确认
  • 固定资产全套账务处理2021
  • 暂估入库做账
  • 车子租赁费开什么发票?多少税
  • 农业银行多级账簿可以代发工资吗
  • 企业被收购的账务处理
  • 公司代个人缴纳社保
  • 连接mysql数据的四要素
  • win10 性能选项
  • win7系统弹出cd
  • ubuntu图片查看
  • mac如何访问win10文件
  • 在局域网内,什么可进行网络资料的共享
  • linux常用配置
  • 网页上面的收藏夹显示
  • 用js实现导航栏的下拉列表
  • jquery自动完成插件
  • PYTHON内置函数,标准库,三方库的区别
  • javascript原生函数的源代码
  • 如何计算白酒的出酒率
  • 12366纳税服务热线接收税收违法行政行为举报管理办法
  • 交契税可以用现金吗
  • 残保金申报表填写
  • 中山市国家税务总局阜沙分局局长杨兴华
  • 留抵税额退税政策2023
  • 企业所得税涉税申报情况进行核查
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设