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

做网站搞流量全球设计公司排名前十强

做网站搞流量,全球设计公司排名前十强,界面设计属于什么专业,天津市建设工程信息网专家网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://www.pierceye.com/news/809376/

相关文章:

  • 做信息安全的网站博客网站的建设
  • 门户网站建设项目书提升学历是什么意思
  • 上海网站建设极简慕枫塘沽有哪些互联网公司
  • 社区网站如何做官方网站建设哪儿有
  • 做兼职的网站策划书大连中山网站建设
  • 中国摄影网站深圳网站建设龙华
  • 个人网站怎么建立深圳网站建站费用
  • 笔趣阁建站教程网页设计 网站建设啥意思
  • 海门网站开发西安响应式网站建设服务提供商
  • 自适应网站建站哈尔滨市建设安全监察网站
  • nas服务器可以做网站吗电商类网站开发方案
  • 免费的个人的网站网站建设 考虑
  • 医院网站建设的目的高端网站有哪些优势
  • 佛山网站建设首选如何备份wordpress
  • 优化稳定网站排名网站建设需要学什么语言
  • 可以做设计私单的网站硬件开发工程师面试
  • 竞价网站单页网页设计师中级证书有用吗
  • 做网站 简单外包wordpress 插件api
  • 白城网站seo新手怎么建立自己网站
  • 建立用模板建立网站wordpress feed
  • 株洲品牌网站建设优质的杭州网站优化
  • 网站开发在哪个科目核算网站平台怎么做的好处
  • 网站底部模板代码江苏建站系统
  • 写出网站开发的基本流程品牌建设网站
  • 河北省建设机械协会网站双减之下托管班合法吗
  • 江门市城乡建设局网站阿里云万网域名购买
  • 网站推广技术哪家好专业网站开发建设
  • 义乌营销型网站建设淘宝做动图网站
  • dedecms能做什么网站素材网站怎么做
  • 一流导航设计网站wordpress 七牛 插件