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

长沙天津网站建设2021国外免费服务器

长沙天津网站建设,2021国外免费服务器,可以绑定域名的免费网站,长沙优秀网站建设读取图像 首先#xff0c;加载待处理的图像#xff0c;可以使用图像处理库#xff08;例如OpenCV#xff09;来实现这一步。确保已加载正确的图像。 定义特定颜色范围 确定所需的特定颜色范围。这将是要检测的马赛克填充的颜色。需要指定颜色的下限值和上限值#xff0c;通…读取图像 首先加载待处理的图像可以使用图像处理库例如OpenCV来实现这一步。确保已加载正确的图像。 定义特定颜色范围 确定所需的特定颜色范围。这将是要检测的马赛克填充的颜色。需要指定颜色的下限值和上限值通常以BGR蓝-绿-红或HSV色相-饱和度-明度颜色空间表示。 转换颜色空间 将图像从BGR颜色空间转换为HSV颜色空间。这是因为在HSV颜色空间中更容易定义颜色范围。 创建颜色掩模 使用颜色的下限值和上限值在HSV图像中创建一个掩模该掩模会高亮符合颜色范围的区域。掩模是一个二值图像其中颜色范围内的像素为白色其他像素为黑色。 寻找颜色区域的轮廓 在掩模图像中使用图像处理技术例如轮廓检测来查找颜色区域的轮廓。每个轮廓代表一个特定颜色的填充矩形。 排除小矩形 在上述步骤中会得到所有颜色填充区域的轮廓。然后根据要求排除太小的矩形。可以通过设定一个阈值来过滤掉宽度或高度小于该阈值的矩形。 计算遮罩与标记的交集 对于筛选后的矩形需要将它们与标记进行比较以计算遮罩与标记的交集。这包括以下步骤 获取矩形的坐标和尺寸。 获取标记的坐标和尺寸。 计算遮盖率 计算交集区域的面积并除以标记区域的面积以获得遮盖率。 分类漏检、误检和正检 每一个标记需指定对应的马赛克误检、漏检、正检分类规则如下 无马赛克指定的标记判定为马赛克漏检遮盖率为0% 有马赛克但无对应标记的判定为马赛克误检不计算遮盖率 有马赛克且有对应标记的判定为马赛克正检遮盖率为[0%100%]。 实现代码 #!/anaconda3/envs/FEALPy/bin python3.7 # -*- coding: utf-8 -*- # --- # Software: PyCharm # File: get_mosaic.py # Author: jerry # E-mail: zj850324yeah.net # Site: # Time: 10月 13, 2023 # --- # 计算遮盖率 # --- import cv2 import numpy as npdef calculate_intersection(mask1, mask2):# 计算两个掩膜的交集return cv2.bitwise_and(mask1, mask2)def extract_and_draw_mosaics(image_path, min_mosaic_size10, max_display_width1600, target_color(181, 230, 29)):# 读取图像image cv2.imread(image_path)# 计算缩放比例width, height image.shape[1], image.shape[0]scale max_display_width / width if width max_display_width else 1.0new_width int(width * scale)new_height int(height * scale)# 缩小图像small_image cv2.resize(image, (new_width, new_height))# 定义目标颜色的阈值范围lower_color np.array([target_color[2] - 1, target_color[1] - 1, target_color[0] - 1])upper_color np.array([target_color[2] 1, target_color[1] 1, target_color[0] 1])# 使用阈值操作找到目标颜色填充的区域mask cv2.inRange(small_image, lower_color, upper_color)# 查找轮廓contours, _ cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)# 提取满足最小尺寸要求的马赛克并画在图像上for contour in contours:x, y, w, h cv2.boundingRect(contour)if w min_mosaic_size and h min_mosaic_size:# 创建一个与提取的矩形相同大小的maskmosaic_mask np.zeros_like(mask)# 计算差异假设宽度差异为dw高度差异为dhdw, dh 5, 10x_offset, y_offset 5, 5mosaic_mask[y y_offset:y h y_offset dh, x x_offset:x w x_offset dw] 1# 计算交集intersection np.logical_and(mosaic_mask, mask)# 计算遮盖率mosaic_area mosaic_mask.sum()intersection_area intersection.sum()coverage intersection_area / float(mosaic_area)# 画提取的矩形绿色边框cv2.rectangle(small_image, (x, y), (x w, y h), (0, 255, 0), 2)# 画创建的矩形红色边框cv2.rectangle(small_image, (x x_offset, y y_offset), (x x_offset w dw, y y_offset h dh),(0, 0, 255), 2)print(f提取的矩形位置(x: {x}, y: {y}), 宽度: {w}, 高度: {h})print(f创建的矩形位置(x: {x x_offset}, y: {y y_offset}), 宽度: {w dw}, 高度: {h dh})print(f遮盖率{coverage:.2f})# 显示图像cv2.imshow(Image with Mosaics, small_image)cv2.waitKey(0)cv2.destroyAllWindows()# 使用示例 image_path ./images/1.png # 图像路径 min_mosaic_size 10 # 定义最小马赛克大小 max_display_width 1600 # 定义最大显示宽度 target_color (181, 230, 29) # 定义目标颜色extract_and_draw_mosaics(image_path, min_mosaic_size, max_display_width, target_color)实现效果
http://www.zqtcl.cn/news/378432/

相关文章:

  • linux下网站开发计算机网络技术专业主要学什么
  • 长沙网站维护公司建个门户网站
  • 做采集网站难不做科技的网站
  • 中小微企业服务平台seo怎么提升关键词的排名
  • 优秀企业网站欣赏店名设计wordpress文章列表添加字段
  • 有哪些做软件的网站服务器安装WordPress没有权限访问
  • app开发和网站开发公司网站怎么做百度竞价
  • 医疗机构网站备案网站建设面试常见问题
  • 建设网银登录网站国内欣赏电商设计的网站
  • 自适应网站优点缺点网站上的在线答题是怎么做的
  • 查询单位信息的网站免费学编程的网站有哪些
  • 建设企业网站进去无法显示wordpress 在线课程
  • 博客型网站建设广州网站建设如何做
  • 网站导航栏全屏怎么做万年网站建设
  • flash源码网站百度关键词价格
  • 个人网站如何发布怎么做记步数的程序到网站
  • 石家庄网站制作公司排名前十可视化网站开发工具有哪些
  • 网站个人博客怎么做杭州网站改版公司电话
  • 烟台北京网站建设公司中国建筑信息资讯网
  • 硬盘做网站空间高端网站设计杭州
  • 南昌网站建设方案网站建设需求分析班级
  • 汉阳做网站关键词站长工具
  • 做海报图片的网站营销软件
  • 能先做网站再绑定域名吗石家庄公司建设网站
  • 设计网站的收费图是怎么做的公司网站简介怎么做
  • 医院网站案例结合七牛云做视频网站
  • wordpress数据库缓存插件aso优化吧
  • 网站二维码代码国贸汽车网站建设
  • 医疗网站建设多少钱信息查询类网站是怎么做的
  • 网站开发辅助工具搜索引擎推广实训