当前位置: 首页 > news >正文

临沂建设局网站视频推广渠道有哪些

临沂建设局网站,视频推广渠道有哪些,wordpress 淘宝客app,wordpress可视化编辑器文章目录 数字图像增强亮度与对比度转换几何变换图像裁剪尺寸变换图像旋转 噪声处理添加噪声处理噪声 数字图像增强 亮度与对比度转换 图像变换可分为以下两种#xff1a; 点算子#xff1a;基于像素变换#xff0c;在这一类图像变换中#xff0c;仅仅根据输入像素值计算… 文章目录 数字图像增强亮度与对比度转换几何变换图像裁剪尺寸变换图像旋转 噪声处理添加噪声处理噪声 数字图像增强 亮度与对比度转换 图像变换可分为以下两种 点算子基于像素变换在这一类图像变换中仅仅根据输入像素值计算相应的输出像素值邻域算子基于图像区域进行变换 两种常用的点算子是用常数对点的像素值进行乘法或加法运算可以表示为 g ( i , j ) α ∗ f ( i , j ) β g(i, j) \alpha * f(i, j) \beta g(i,j)α∗f(i,j)β 其中图像中点的位置为 ( i , j ) (i, j) (i,j)α值代表增益β值代表偏置。对图像进行亮度和对比度的变换就是一种点算子这两个参数分别可以用来控制对比度与亮度。可以通过调节这两个参数的值来对图片进行对比度或亮度的调节。即将原图像中的每一个像素点都加上一个偏置常数则可以使图片的亮度变大。类似地将原图片中的像素点乘上一个增益系数可以调整图片的对比度。 注意 图片像素点的像素值取值范围是[0255]一定不要让其溢出可以使用np.clip进行截断 示例图像 import cv2 import numpy as np# 方法1 基于addWeighted()函数实现 def convert_img1(img, alpha, beta):blank np.zeros(img.shape, img.dtype)return cv2.addWeighted(img, alpha, blank, 0, beta)# 方法2 通过for循环手动实现 def convert_img2(img, alpha, beta):rows, cols, chs img.shapenew_img np.zeros(img.shape, img.dtype)for i in range(rows):for j in range(cols):for k in range(chs):new_img[i, j, k] np.clip(alpha * img[i, j, k] beta, 0, 255)return new_imgimg cv2.imread(woman.png) cv2.imwrite(convert_img1.jpg, convert_img1(img, 2.2, 50)) cv2.imwrite(convert_img2.jpg, convert_img2(img, 2.2, 50))在上述代码中函数convert_img1()中的addWeighted()函数的参数列表分别为[img1,alpha,img2,beta,gamma]代表将两个图片进行如下计算 n e w _ i m g a l p h a ∗ i m g 1 b e t a ∗ i m g 2 g a m m a new\_img alpha * img1 beta * img2 gamma new_imgalpha∗img1beta∗img2gamma 而函数convert_img2()实现的过程就是通过for循环修改原始图片的像素值与函数convert_img1()的过程是一样的只不过convert_img1()函数调用addWeighted()函数的img2参数中图片的像素值都是0而已。 几何变换 图像的几何变换是指对图片中的图像像素点的位置进行变换的一种操作它将一幅图像中的坐标位置映射到新的坐标位置也就是改变像素点的空间位置同时也要估算新空间位置上的像素值。 图像裁剪 在图像数据的矩阵中裁剪出部分矩阵作为新的图像数据从而实现对图像的裁剪。 import cv2 import numpy as np# 图像裁剪 img cv2.imread(woman.png) print(img.shape)new_img img[20:300, 20:400] cv2.imwrite(crop_img.jpg, new_img)上述代码实现的过程是将原始的图像从第(2020)个像素点的位置裁剪到(300400)处裁剪的形状是矩形。 尺寸变换 修改图像的尺寸也就是修改图像的大小OpenCV的resize()函数可以实现这样的功能。对图像进行尺寸变换时必然会丢失或者增加一些像素点。在缩放时建议使用区域插值cv2.INTER_AREA可以避免出现波纹在放大时建议使用三次样条插值cv2.INTER_CUBIC但是其计算速度相对较慢。也可以使用线性插值cv2.INTER_LINEAR默认情况下所有改变图像尺寸大小的操作使用的插值法都是线性插值。 # 图像缩放 small_resize_img cv2.resize(img, (200, 200), interpolationcv2.INTER_AREA) cv2.imwrite(small_resize.jpg, small_resize_img)small_resize_img2 cv2.resize(img, None, fx0.5, fy0.6, interpolationcv2.INTER_AREA) # 图像的宽对应的是列数高对应的是行数 cv2.imwrite(small_resize2.jpg, small_resize_img2)图像旋转 旋转通过getRotationMatrix2D()函数来实现。 # 图像旋转 img cv2.imread(woman.png) rows, cols, _ img.shape rotated_mat cv2.getRotationMatrix2D((cols/2, rows/2), 45, 1) # 第一个参数是旋转中心第2个为旋转角度第3个为旋转后的缩放因子 rotated_img cv2.warpAffine(img, rotated_mat, dsize(cols, rows)) cv2.imwrite(rot45.jpg, rotated_img)噪声处理 对训练数据添加适量噪声可以使训练后的模型更加鲁棒对模型的性能提升有一定帮助。对噪声进行消除可以增加图像的质量。 添加噪声 对图像添加两种常用噪声的方法 椒盐噪声高斯噪声 import cv2 import random import numpy as np# 添加椒盐噪声 def salt_and_pepper_noise(img, percentage):rows, cols, chs img.shapenum int(percentage * rows * cols)for i in range(num):x random.randint(0, rows-1)y random.randint(0, cols-1)z random.randint(0, chs-1)if random.randint(0, 1) 0:img[x, y, z] 0 # 黑色噪点else:img[x, y, z] 255 # 白色噪点return img# 添加高斯随机噪声 def gaussian_noise(img, mu, sigma, delta):rows, cols, chs img.shapefor i in range(rows):for j in range(cols):for k in range(chs):# 生成高斯分布的随机数与原始数据相加要取整value int(img[i, j, k] delta*random.gauss(mumu, sigmasigma))value np.clip(a_max255, a_min0, avalue)img[i, j, k] valuereturn imgimg cv2.imread(woman.png)cv2.imwrite(saltPepper.jpg, salt_and_pepper_noise(img, 0.3)) cv2.imwrite(gaussain.jpg, gaussian_noise(img, 0, 1, 100))可以看到上述为图像添加椒盐噪声和高斯噪声的方法。对于高斯噪声来说函数gaussian_noise()中的mu参数代表了随机数高斯分布的平均值sigma代表随机数高斯分布的标准差而参数delta代表一个系数表明添加高斯噪声的强度。 处理噪声 OpenCV提供了几种滤波方法如中值滤波、双边滤波、高斯模糊、二维卷积等 import cv2 import random import numpy as np# 模糊与滤波 salt_and_pepper_img cv2.imread(saltPepper.jpg) gaussain_img cv2.imread(gaussain.jpg)# 二维卷积 kernel np.ones((5, 5), np.float32) / 25 # 每个值是0.04 conv_2d_img cv2.filter2D(salt_and_pepper_img, -1, kernel) cv2.imwrite(filter_2d_img.jpg, conv_2d_img)# 中值滤波 median_blur_img cv2.medianBlur(salt_and_pepper_img, 5) # 参数5表示大小为5x5的区域像素值进行计算 cv2.imwrite(median_blur_img.jpg, median_blur_img)# 高斯模糊 gaussian_blur_img cv2.GaussianBlur(gaussain_img, (5, 5), 0) cv2.imwrite(gaussian_blur_img.jpg, gaussian_blur_img)# 双边滤波 bilateral_filter_img cv2.bilateralFilter(gaussain_img, 9, 75, 75) # 9代表邻域直径两个参数75分别代表值域与空域标准差 cv2.imwrite(bilateral_filter_img.jpg, bilateral_filter_img)可以看到中值滤波的效果是最好的。
http://www.sadfv.cn/news/136209/

相关文章:

  • 如何做好一个企业网站设计如何做简洁网站设计
  • 电商模板哪个网站好网站上如何放入地图
  • 化妆品网站开发背景如何创立网站 优帮云
  • 好网站建设公司哪家好邯郸市口碑网络技术有限公司
  • 意大利之家设计网站国产 做 视频网站
  • 天津市南开区网站开发有限公司网站开发技术指标是什么
  • 中小企业网站制作报价想系统学习wordpress
  • 做新浪微博网站需要建筑工程职业学院官网
  • 聊城做网站做的不错的关键词竞价排名
  • 图书馆建设投稿网站wordpress引入html代码
  • 做公司网站方案网站建设文化哪家好
  • 郎溪做网站视频生成链接
  • 网站更换域名 换程序 SEO做网站的所有代码
  • 哈尔滨市哪里做淘宝网站即商通网站建设推广
  • html门户网站开发源代码网站建设端口
  • 密云上海网站建设wordpress 手机站目录
  • 培训网站建设机构上海市网站信息无障碍建设
  • 商家自己做的商品信息查询网站备案网站名称重复
  • 网站开发+协作平台怎么更改网站首页图片尺寸
  • 网站备案政策为了推出企业网站建设
  • 没有网站可以做网络推广吗可信赖的邢台做网站
  • 企业为何做网站中国保险公司排名前十名
  • 网站显示系统建设中如何去掉wordpress底部版权
  • 满山红厦门网站建设如何把网页字体转换为wordpress
  • me域名的网站网站非法收录用户信息
  • 做exo小说的网站南昌做小程序公司
  • 站长查询站长工具3g微网站
  • 个人 网站备案 幕布大连关键词
  • 河北提供网站制作公司电话怎么做同城商务网站
  • 佛山外贸网站建设价位商赢网站建设