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

厦门网站开发wordpress 更新用户名

厦门网站开发,wordpress 更新用户名,网站模板制作步骤,装修公司怎么联系OpenCV基础 threshold函数的使用 https://blog.csdn.net/u012566751/article/details/77046445 图像的二值化就是将图像上的像素点的灰度值设置为0或255#xff0c;这样将使整个图像呈现出明显的黑白效果。在数字图像处理中#xff0c;二值图像占有非常重要的地位#xff0…OpenCV基础 threshold函数的使用 https://blog.csdn.net/u012566751/article/details/77046445 图像的二值化就是将图像上的像素点的灰度值设置为0或255这样将使整个图像呈现出明显的黑白效果。在数字图像处理中二值图像占有非常重要的地位图像的二值化使图像中数据量大为减少从而能凸显出目标的轮廓。OpenCV中提供了函数cv::threshold(); 距离变换distanceTransform应用——查找物体质心细化字符轮廓 https://www.cnblogs.com/mtcnn/p/9411967.html distanceTransform方法的功能 用于计算图像中每一个非零点距离离自己最近的零点的距离distanceTransform的第二个Mat矩阵参数dst保存了每一个点与最近的零点的距离信息图像上越亮的点代表了离零点的距离越远。 一、查找物体质心 C #include core/core.hpp #include imgproc/imgproc.hpp #include highgui/highgui.hppusing namespace cv;int main(int argc,char *argv[]) {float maxValue0; //定义距离变换矩阵中的最大值Point Pt(0,0);Mat imageimread(argv[1]);Mat imageGray;cvtColor(image,imageGray,CV_RGB2GRAY);imageGray~imageGray; //取反GaussianBlur(imageGray,imageGray,Size(5,5),2); //滤波threshold(imageGray,imageGray,20,200,CV_THRESH_BINARY); //阈值化 Mat imageThin(imageGray.size(),CV_32FC1); //定义保存距离变换结果的Mat矩阵distanceTransform(imageGray,imageThin,CV_DIST_L2,3); //距离变换Mat distShow;distShowMat::zeros(imageGray.size(),CV_8UC1); //定义细化后的字符轮廓for(int i0;iimageThin.rows;i){for(int j0;jimageThin.cols;j){distShow.atuchar(i,j)imageThin.atfloat(i,j);if(imageThin.atfloat(i,j)maxValue){maxValueimageThin.atfloat(i,j); //获取距离变换的极大值PtPoint(j,i); //坐标}}}normalize(distShow,distShow,0,255,CV_MINMAX); //为了显示清晰做了0~255归一化circle(image,Pt,maxValue,Scalar(0,0,255),3); circle(image,Pt,3,Scalar(0,255,0),3);imshow(Source Image,image);imshow(Thin Image,distShow);waitKey();return 0; }1.原始图片 2.经过距离变换后距离Mat矩阵dst 为了显示清晰做了0~255的归一化。可以看到中心处最亮说明了中心点距离零点的距离最远而最远处就可以作为物体的质心。 3.标记质心绿色点 二、细化轮廓 C: #include core/core.hpp #include imgproc/imgproc.hpp #include highgui/highgui.hppusing namespace cv;int main(int argc,char *argv[]) {float maxValue0; //定义距离变换矩阵中的最大值Mat imageimread(argv[1]);Mat imageGray;cvtColor(image,imageGray,CV_RGB2GRAY);imageGray~imageGray; //取反GaussianBlur(imageGray,imageGray,Size(5,5),2); //滤波threshold(imageGray,imageGray,20,200,CV_THRESH_BINARY); //阈值imshow(s,imageGray);Mat imageThin(imageGray.size(),CV_32FC1); //定义保存距离变换结果的Mat矩阵distanceTransform(imageGray,imageThin,CV_DIST_L2,3); //距离变换Mat distShow;distShowMat::zeros(imageGray.size(),CV_8UC1); //定义细化后的字符轮廓for(int i0;iimageThin.rows;i){for(int j0;jimageThin.cols;j){if(imageThin.atfloat(i,j)maxValue){maxValueimageThin.atfloat(i,j); //获取距离变换的极大值}}}for(int i0;iimageThin.rows;i){for(int j0;jimageThin.cols;j){if(imageThin.atfloat(i,j)maxValue/1.9){distShow.atuchar(i,j)255; //符合距离大于最大值一定比例条件的点设为255}}}imshow(Source Image,image);imshow(Thin Image,distShow);waitKey();return 0; }1.原始图像 2.细化效果 形态学操作之腐蚀与膨胀 https://blog.csdn.net/qq_42856191/article/details/123663533 一、腐蚀erosion 1.1 什么是腐蚀 简单来说腐蚀就是把图像中的物体变小了用背景去侵蚀前景 腐蚀的工作过程如下图所示A是一个集合B是一个结构单元我们使用B去对集合A进行腐蚀腐蚀过程如C所示在腐蚀过程中结构单元必须全部位于集合A中才能进行腐蚀操作最终得到的结果即为D所示。 Python import cv2 import numpy as npori cv2.imread(rC:\Users\Lenovo\Desktop\original.jpg) # 读取图像kernel1 np.ones((3, 3), np.uint8) # 3个不同尺度的腐蚀单元 kernel2 np.ones((5, 5), np.uint8) kernel3 np.ones((7, 7), np.uint8)erosion1 cv2.erode(ori, kernel1) # 腐蚀函数 erosion2 cv2.erode(ori, kernel2) erosion3 cv2.erode(ori, kernel3)cv2.imshow(original, ori) cv2.imshow(erosion1, erosion1) cv2.imshow(erosion2, erosion2) cv2.imshow(erosion3, erosion3)cv2.imwrite(rC:\Users\Lenovo\Desktop\erosion1.jpg, erosion1) cv2.imwrite(rC:\Users\Lenovo\Desktop\erosion2.jpg, erosion2) cv2.imwrite(rC:\Users\Lenovo\Desktop\erosion3.jpg, erosion3)cv2.waitKey() 下面展示的是程序得到的结果图由图可知腐蚀能对图像中的毛刺进行去除但这也与腐蚀单元的大小有关3 × 3 3×33×3大小的核去除效果不如5 × 5 5×55×5与7 × 7 7×77×7此外7 × 7 7×77×7的核使得图像变得更加细小。 二、膨胀dilation 2.1 什么是膨胀 简单来说膨胀就是把图像中的物体变大了对前景进行膨胀 膨胀的工作过程如下图所示A是一个集合B是一个结构单元我们使用B去对集合A进行膨胀膨胀过程如C所示在膨胀过程中结构单元只要有一个位于集合A中就能进行膨胀操作最终得到的结果即为D所示。 Python: import cv2 import numpy as npori cv2.imread(rC:\Users\Lenovo\Desktop\original.jpg) # 读取图像kernel1 np.ones((3, 3), np.uint8) # 3个不同尺度的腐蚀单元 kernel2 np.ones((5, 5), np.uint8) kernel3 np.ones((9, 9), np.uint8)dilation1 cv2.dilate(ori, kernel1) # 膨胀函数 dilation2 cv2.dilate(ori, kernel2) dilation3 cv2.dilate(ori, kernel3)cv2.imshow(original, ori) cv2.imshow(dilation1, dilation1) cv2.imshow(dilation2, dilation2) cv2.imshow(dilation3, dilation3)cv2.imwrite(rC:\Users\Lenovo\Desktop\dilation1.jpg, dilation1) cv2.imwrite(rC:\Users\Lenovo\Desktop\dilation2.jpg, dilation2) cv2.imwrite(rC:\Users\Lenovo\Desktop\dilation3.jpg, dilation3)cv2.waitKey() 下面展示的是程序得到的结果图由图可知膨胀能对图像中的物体进行扩张但这也与膨胀单元的大小有关越大的膨胀核使得图像扩张区域更大。 形态学操作之开运算与闭运算 https://blog.csdn.net/qq_42856191/article/details/123670455 一、开运算 1.1 什么是开运算先腐蚀后膨胀的操作称为开运算。 1.2作用消除细小物体、在窄区域分离物体、平滑大物体边界等。 二、闭运算 2.1 什么是闭运算先膨胀后腐蚀的操作称为闭运算。 2.2作用填充物体空洞、消除噪声、连接邻近物体、平滑边界等。 图像分割 – 距离变换与分水岭算法硬币检测、扑克牌检测、车道检测 https://blog.csdn.net/great_yzl/article/details/119831771 以上述引用中的硬币检测为例子的分割过程 1.将RGB图片转换为灰度图 2.去噪 开运算先侵蚀后膨胀。会将两个物体之间可能存在的粘连噪点过滤并将前景物体扩大。 3.确定背景区域 对图片进行膨胀操作将前景扩大背景也会随之减小。那么此时对象原对象此时背景 原背景那么此时的背景自然可以确定为原背景的一部分。离对象中心很远的是背景 4.确定前景区域 原理距离变换在二值图中把对象缩小得到的就是原图的一部分可以确定为前景。 这种距离变换可以将前景中的不同实例分离距离变换后得到前景物体不同灰度值的像素通过threshold函数选定一个阈值来缩小前景物体中每个的大小从而达到将不同实例分离的效果。不分离的话可以不用距离变换只用腐蚀就够了 下图分别为img原始图片、opening膨胀后的图片、sure_fg距离变换后经过threshold阈值操作获得的确定前景实例
http://wiki.neutronadmin.com/news/340573/

相关文章:

  • 怎样做自己的公司网站确山网站建设
  • 雪域什么网站是做电影的两个域名指向同一个网站
  • 怎么自己创建一个网站手机品牌羽绒服排名前十
  • 游戏网站设计鄂尔多斯建设局网站
  • 做头像网站wordpress评论翻页
  • 江西邮电建设工程有限公司网站提供网站建设哪家效果好
  • 德州极速网站建设统一企业信息管理系统网站
  • 024 网站推广海门建设厅网站
  • 公司网站建设需求微信官网网站模板
  • 上海网站推广企业代帮企业做网站
  • 海宁长安网站开发奔驰宝马游戏网站建设
  • 网站建设优秀公司水资源监控能力建设门户网站
  • 互联网电商网站建设阿里巴巴司法拍卖网官网
  • 江苏省建设工程施工安全网站图书馆网站建设背景
  • 建设银行官方网站app下载邮箱的官方网站注册
  • 自助建站系统介绍WordPress对象存储插件
  • 购物网站的后台免费红色ppt模板下载
  • 网站服务器的费用番禺企业网站建设
  • 网站怎么做推广和宣传语seoul
  • 公司建设网站带来什么福州网站建设出格
  • 一个人做商城网站wordpress获取最新文章
  • 特价做网站17zwd一起做网店潮汕站
  • 增长超人网站建设价格四川省工程建设信息网
  • 怎么做一个网站页面oa软件多少钱一套
  • 个人网站可以做产品宣传吗泉州网红打卡景点
  • 地产商网站建设网站域名要实名认证吗
  • 什么网站可以做兼职赚钱吗无人在线观看视频高清视频
  • 网站建设制作软件叫啥专业的外贸网站
  • 网站建设进程方案度娘网站灯笼要咋做呢
  • 福建省建设工程执业注册管理中心网站软文价格