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

北京建设执业网站烟台app开发公司

北京建设执业网站,烟台app开发公司,淮南先锋网,鄂州北京网站建设文章目录 质心目标截取光斑半径 python图像处理教程#xff1a;初步#x1f4f7;插值变换#x1f4f7;形态学处理#x1f4f7;滤波 光斑是工程中经常出现的图像数据#xff0c;其特点是目标明确#xff0c;分布清晰。对光斑图像的分析#xff0c;主要包括质心定位、目标… 文章目录 质心目标截取光斑半径 python图像处理教程初步插值变换形态学处理滤波 光斑是工程中经常出现的图像数据其特点是目标明确分布清晰。对光斑图像的分析主要包括质心定位、目标截取以及半径拟合等。 质心 所谓质心就是质量的中心连续物体的质心可表示为 ∫ x f ( x ) d x ∫ f ( x ) d x \frac{\int xf(x)\text dx}{\int f(x)\text dx} ∫f(x)dx∫xf(x)dx​则图像质心可表示为 x ˉ ∑ i p i j ∑ p i j y ˉ ∑ j p i j ∑ p i j \bar x \frac{\sum ip_{ij}}{\sum p_{ij}}\quad \bar y \frac{\sum jp_{ij}}{\sum p_{ij}} xˉ∑pij​∑ipij​​yˉ​∑pij​∑jpij​​ 由于图像是二维数组有两个可以操作的方向故而除了全局的质心外其每一行或每一列均有一个质心行质心和列质心的交叉点就是图像的质心图像如下左侧为原始光斑右侧为其行质心和列质心。 绘图代码如下考虑到求质心时有一个求和项需要做除数所以在求质心之前将图像加上 1 0 − 9 10^{-9} 10−9以确保不会出现除0错误同时不会对质心造成干扰。 from numpy as np import matplotlib.pyplot as plt# 创建一副光斑图像 size [256,256] x, y np.indices(size) d2 (x-80)**2(y-80)**2 img 255*np.exp(-d2/32)# 求行质心和列质心 arr np.arange(256).reshape(-1,1)cImg img 1e-9 cenRow (cImg arr).reshape(-1)/np.sum(cImg, 0) cenCol (cImg.T arr).reshape(-1)/np.sum(cImg, 1)# 绘图 fig plt.figure() ax1 fig.add_subplot(121) ax1.imshow(img, cmapgray)ax2 fig.add_subplot(122, shareyax1) ax2.tick_params(axisy, labelleftFalse) arr arr.reshape(-1) plt.imshow(img) plt.plot(arr, cenRow) plt.plot(cenCol,arr) plt.show()目标截取 由于光斑只占据图片中很小一部分大量的冗余信息等同于噪声会影响数据处理故需截取感兴趣的区域。【plt.ginput】函数提供一种交互操作方法可返回鼠标点击的位置其输入参数为选取点数输出为点击的点的坐标。根据返回的点的位置即可对图像进行截取。 plt.imshow(img) p1, p2 plt.ginput(2)roi img[int(p1[1]):int(p2[1]), int(p1[0]):int(p2[0])]在本例中 p 1 , p 2 p_1, p_2 p1​,p2​两点分别在左上角和右下角从而无论 x x x还是 y y y p 1 p_1 p1​的值均小于 p 2 p_2 p2​。另一方面ginput的返回值是 ( x , y ) (x,y) (x,y)坐标而矩阵截取过程则是先行后列行对应的是 y y y这就是roi在截取时的选区逻辑。 最终截取结果如下。 fig plt.figure() ax fig.add_subplot(121) plt.imshow(roi)ax fig.add_subplot(122, projection3d) yGrid, xGrid np.indices(roi.shape) ax.plot_surface(yGrid, xGrid, roi) plt.show()光斑半径 一般来说Gauss光束以其强度最大值的 1 e \frac{1}{e} e1​处为边界也就是说最简单的求解光斑半径的方法就是统计所有边界内部的点的个数然后再根据圆面积公式求取其半径。 area np.sum(roi255/np.e) r np.sqrt(area/np.pi) # 5.56另一种方法则需对光斑的某一维度进行高斯拟合。具体方法是对roi按列求最大值然后对得到的数组进行高斯拟合最终得到半径值 r 5.65 r5.65 r5.65显然更接近于我们最开始设定的 32 \sqrt{32} 32 ​其拟合结果如下。 from scipy.optimize import curve_fit def gauss(x, a, b, c):return a*np.exp(-(x-b)**2/c**2)y np.max(roi,0) x np.arange(len(y))abc, para curve_fit(gauss,x,y) print(abc) #即上式中的a,b,c # [255. 19. 5.65685425] Y gauss(x,abc[0],abc[1],abc[2]) #拟合值 plt.scatter(x,y, labelorigin) #绘制原始数据的散点图 plt.plot(x,Y, labelcurve_fit) #绘制拟合数据的曲线图 plt.legend() plt.show()
http://www.hkea.cn/news/14329861/

相关文章:

  • 绍兴网站制作方案定制seo快速排名的方法
  • 网站制作设计说明app开发和网站开发一样么
  • 企业网站建设方案文档百度ai搜索引擎
  • 如何建设网站平台金华网站推广
  • 品牌网站建设创意新颖wordpress站点路径
  • 建网站传播文化的好处网站开发前后端工具组合
  • 做网站推广需要具备哪些条件昆山建设银行网站首页
  • 企业官方网站开发平台网站快速收录教程
  • 网站制作论文致谢坪山新区城市建设局网站
  • 大连网站建设方案青羊区网站建设
  • 燕郊做网站公司网站建设能赚钱吗
  • 网站建设技术服务的方式是什么意思小米手机优化
  • asp网站建设教案新手学做网站 pdf 下载
  • 百度推广优化是什么?麻城seo
  • 常见网站建设公司术语网站开发前期调研
  • 官方网站建设案例开封网站制作哪家好
  • 建设网站方案ppt昆明网站建设猫咪
  • 网站建设合同首付多少钱杭州建设职业技术学院招聘信息网站
  • 做网站的客户需求seo软文外包公司
  • 上传到网站去的文档乱码响应式网站 教程
  • 张店网站制作设计公司wordpress建立ftp
  • 深圳 网站优化公司排名wordpress tag标签页
  • 帮别人做网站服务器深度苏州自媒体公司
  • 顺德做外贸网站免费网页模板源代码
  • 上海建站价格建立保密工作风险评估监测预警
  • 用网站模板给人做网站挣钱吗加强网站建设的原因
  • 三水建设局招标网站电商网站建设解决方案
  • 南京装修公司做网站万网企业网站建设
  • cms建站系统无锡名气大的网页设计
  • 购销网站建设视频百度云公司介绍网站源码