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

自己想做个网站怎么做的让自己的网站收录

自己想做个网站怎么做的,让自己的网站收录,wordpress 自定义插件,手机软件下载大全这段代码的作用是从指定路径读取图像和标签文件,然后在图像上绘制分割区域和相关点,并保存最终的图像。以下是每个函数的具体作用及其解释: read_labels(label_path): 读取指定路径的标签文件。标签文件的每一行表示一个物体的分割信息&#…

这段代码的作用是从指定路径读取图像和标签文件,然后在图像上绘制分割区域和相关点,并保存最终的图像。以下是每个函数的具体作用及其解释:

  1. read_labels(label_path):

    • 读取指定路径的标签文件。
    • 标签文件的每一行表示一个物体的分割信息,包含类别ID和多个坐标点(归一化的x, y值)。
    • 返回一个列表,每个元素是一个元组,包含类别ID和坐标点。
  2. random_color():

    • 生成一个随机颜色,用于绘制分割区域和边界。
  3. draw_segmentation(image, labels):

    • 接受一个图像和标签信息,在图像上绘制分割区域、边界和点。
    • 对于每个标签,先将归一化坐标转换为实际像素坐标,然后用随机颜色绘制多边形和边界,最后绘制点。
    • 使用cv2.addWeighted函数将绘制的分割区域和原始图像进行融合,产生半透明效果。
  4. 主程序部分:

    • 指定图像路径并推导对应的标签文件路径。
    • 读取图像和标签。
    • 调用draw_segmentation函数在图像上绘制分割区域。
    • 保存最终绘制后的图像。

改进和优化建议

  1. 错误处理: 增加对文件读取和解析的错误处理,以避免程序崩溃。
  2. 颜色透明度: 透明度设置硬编码为100,可以将其作为可配置参数传入函数。
  3. 文件路径: 路径处理方式可以更灵活,以适应更多的文件组织结构。

完整的改进代码示例

import cv2
import numpy as np
import random
import osdef read_labels(label_path):with open(label_path, 'r') as file:lines = file.readlines()labels = []for line in lines:parts = list(map(float, line.strip().split()))class_id = int(parts[0])points = np.array(parts[1:]).reshape(-1, 2)labels.append((class_id, points))return labelsdef random_color():return [random.randint(0, 255) for _ in range(3)]def draw_segmentation(image, labels, alpha=0.4, color_transparency=100):overlay = image.copy()for class_id, points in labels:# Convert normalized coordinates to absolute pixel valuespoints[:, 0] *= image.shape[1]points[:, 1] *= image.shape[0]points = points.astype(int)# Draw filled polygon with random colorcolor = random_color()cv2.fillPoly(overlay, [points], color + [color_transparency])  # 100 for transparency# Draw edges and pointscv2.polylines(image, [points], isClosed=True, color=color, thickness=2)for point in points:cv2.circle(image, tuple(point), 3, color, -1)# Combine original image with overlaycv2.addWeighted(overlay, alpha, image, 1 - alpha, 0, image)return image# Paths
image_path = r"/ssd/xiedong/lightyolov5/yolo-seg/coco8-seg/images/train/000000000009.jpg"
label_path = image_path.replace("images", "labels").replace(".jpg", ".txt")# Ensure paths exist
if not os.path.exists(image_path):raise FileNotFoundError(f"Image file not found: {image_path}")
if not os.path.exists(label_path):raise FileNotFoundError(f"Label file not found: {label_path}")# Read image and labels
image = cv2.imread(image_path)
labels = read_labels(label_path)# Draw segmentation on the image
segmented_image = draw_segmentation(image, labels)# Save the result
output_path = "segmented_image1.png"
cv2.imwrite(output_path, segmented_image)
print(f"Segmented image saved to {output_path}")

改进点

  • 增加了对文件路径存在性的检查,避免文件不存在时程序崩溃。
  • 将透明度参数和颜色透明度参数外部化,增加函数的灵活性。
  • 在保存结果图像时,打印保存路径,方便用户确认保存位置。

在这里插入图片描述

在这里插入图片描述

问询、帮助

你如果需要帮助,请看这里:

https://docs.qq.com/sheet/DUEdqZ2lmbmR6UVdU?tab=BB08J2
http://www.yayakq.cn/news/835702/

相关文章:

  • 江苏网站建设效果免费手机网站制作app
  • 防水网站怎么做做响应式网站兼容哪几个尺寸
  • 地信的网站建设西宁网站建设服务公司
  • 上海各区的网站有哪些公司网站改了模板被百度降权
  • 个人网页设计步骤长沙百度seo代理
  • 无锡建设工程质量监督网站正确的网线的顺序图
  • 钓鱼网站网站怎么做ppt设计说明
  • 蓝奏云注册网站设计企业品牌logo
  • 如何确定网站建设 栏目自己设计一个网站
  • 肥城网站建设广州外地车牌微信h5制作软件
  • 揭阳网站建设团队wordpress 4.2.3 exp
  • 冷链物流网站专业创建网站公司
  • 宁波网站建设价格费用优惠劵精选网站怎么做
  • 成品网站1688入门网大连营销团队
  • 网站字体一般是什么字体微信购物商城
  • 营销策略都有哪些4pseo专业技术培训
  • 长春网站制作公司贵阳市建设局网站
  • 精美网站开发方案化肥网站模板
  • 微信上建微网站要钱吗淄博网站建设招聘
  • 做网站需要哪些资料台州 做网站
  • 诸城个人网站建设网页界面设计布局
  • 高端网站建设与发展天津seo推广方法
  • 建一个外贸网站多少钱地图网站模板
  • 杭州高端网站win服务器做网站
  • 宁夏网站营销推广网站建设 支持多种语言
  • 企业建设网站的作用ireal 网站建设
  • 汕尾商城网站建设为网站网站做网络维护
  • 做网站 赚钱吗哪能建设网站
  • 旅行做攻略的网站中国交通建设集团有限公司招标网
  • 在哪里可以接网站开发的外包东莞免费建站模板