对照测试

main
o__-xpf-__o 5 days ago
parent 55344f6860
commit a11e684a7b

@ -204,36 +204,14 @@ class PoseNet(private val interpreter: Interpreter, private var gpuDelegate: Gpu
)
totalScore += confidenceScores[idx]
}
// 在此部分中添加角度数据和合格率数据
// 遍历 keyPoints
keypointList.forEach { keypoint ->
// 获取当前关键点的位置
val x = keypoint.coordinate.x
val y = keypoint.coordinate.y
// 假设我们计算胸部与左右肩膀之间的角度(这里只是示例,具体取决于你的模型)
if (keypoint.bodyPart == BodyPart.LEFT_SHOULDER || keypoint.bodyPart == BodyPart.RIGHT_SHOULDER) {
// 获取左肩和右肩的坐标
val leftShoulder = keypointList.first { it.bodyPart == BodyPart.LEFT_SHOULDER }
val rightShoulder = keypointList.first { it.bodyPart == BodyPart.RIGHT_SHOULDER }
// 计算肩膀角度
val angle = calculateAngle(
leftShoulder.coordinate.x,
leftShoulder.coordinate.y,
rightShoulder.coordinate.x,
rightShoulder.coordinate.y
)
}
// 添加合格率数据
}
//计算并得到关键点之间的角度关系
val keypoint = KeypointAngles()
keypoint.csAngles(keypointList.toList())
// 返回一个包含关键点和总分数的Person对象
return Person(keyPoints = keypointList.toList(), score = totalScore / numKeypoints)
}
class KeypointAngles {
// 用来存储角度的列表
val angles = mutableListOf<Float>()
@ -322,9 +300,6 @@ class PoseNet(private val interpreter: Interpreter, private var gpuDelegate: Gpu
}
}
// 返回上一次推理的时间
override fun lastInferenceTimeNanos(): Long = lastInferenceTimeNanos

Loading…
Cancel
Save