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

关键点翻转 数据增强踩坑

目录

关键点翻转逻辑和示例:

下面是翻转增强的例子,不是真实情况


关键点翻转逻辑和示例:

1. 图像左右翻转

2. X 坐标翻转:x' = image_width - 1 - x

3. 对称结构(如左眼、右眼),要做索引重排。

镜像映射表 (mirror_mapping):

这个数组定义了翻转后关键点的新顺序。

对于常见的 68 点或 5 点人脸标注,有固定的映射表,可以根据你使用的模型进行设置。

下面是翻转增强的例子,不是真实情况

import cv2
import numpy as np
import matplotlib.pyplot as plt# 示例人脸关键点(以 68 点为例,假设已对齐到图片上)
# 注意:这些点是假设的测试用数据
landmarks = np.array([[30, 50], [35, 48], [40, 47], [45, 48], [50, 50],  # 鼻子线中点示意[20, 40], [25, 38], [55, 38], [60, 40],            # 左右眼角示意[28, 60], [32, 62], [48, 62], [52, 60],            # 嘴角示意
])# 显示原始图像和关键点
def show_image_with_landmarks(img, landmarks, title="Image"):plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))plt.scatter(landmarks[:, 0], landmarks[:, 1], c='r')plt.title(title)plt.axis('off')plt.show()# 创建一个示例图像(白底+假人脸框)
img = np.full((100, 80, 3), 255, dtype=np.uint8)
cv2.rectangle(img, (10, 30), (70, 80), (200, 200, 200), 2)# 1. 水平翻转图像
flipped_img = cv2.flip(img, 1)
h, w = img.shape[:2]# 2. 翻转关键点 x 坐标(w - 1 - x)
flipped_landmarks = landmarks.copy()
flipped_landmarks[:, 0] = w - 1 - landmarks[:, 0]# 3. 调整左右对称点的顺序(关键)
# 例如对于68点模型,要将左眼和右眼、左嘴角和右嘴角等对调
# 示例中我们假设第5和第0对调,6和3对调,7和2对调,等等(按你模型具体定义调整)
mirror_mapping = [4, 3, 2, 1, 0, 8, 7, 6, 5, 13, 12, 11, 10, 9]  # index映射(这里只处理了14个点)
flipped_landmarks = flipped_landmarks[mirror_mapping]# 显示原图和翻转图
show_image_with_landmarks(img, landmarks, "Original")
show_image_with_landmarks(flipped_img, flipped_landmarks, "Flipped")

相关文章:

  • DeepSeek实战--MCP Client Stdio模式
  • android studio 开启无线调试
  • Spring AI 1.0.0 中文文档上线
  • 网页 CSS美化2(详解)
  • 页面实现渲染大量 DOM 元素
  • 【GESP真题解析】第 12 集 GESP 二级 2024 年 3 月编程题 1:乘法问题
  • Spring Boot中使用AMQP协议与RabbitMQ
  • stream数据流
  • 0304考试通过-逻辑回归实战-机器学习-人工智能
  • 40-智慧医疗服务平台(在线接/问诊/机器学习)
  • 机器学习课程设计报告 —— 基于二分类的岩石与金属识别模型
  • 如何保证 Kafka 数据实时同步到 Elasticsearch?
  • 【MySQL】第7节|Mysql锁机制与优化实践以及MVCC底层原理剖析
  • 预分配矩阵内存提升文件数据读取速度
  • Kotlin中let、run、with、apply及also的差别
  • 【Python/Pygame】事件监测
  • [C语言初阶]扫雷小游戏
  • Java 函数式接口(Functional Interface)
  • 符合Python风格的对象(使用 __slots__ 类属性节省空间)
  • DeepSeek 赋能数字农业:从智慧种植到产业升级的全链条革新
  • 为什么最近好多网站打不开了/注册网站需要多少钱
  • 网站建设要求 优帮云/进入百度搜索首页
  • dw网站的站点建设/常用的seo查询工具
  • 梨园网站建设/网站搜索引擎优化情况怎么写
  • 阳江网络公司/郑州网站优化
  • 腾讯视频网站建设维护/职业培训机构排名前十