gpt4 book ai didi

kinect - 使用 Kinect 进行图像处理

转载 作者:行者123 更新时间:2023-12-05 01:11:37 24 4
gpt4 key购买 nike

我正在尝试创建一个应用程序来放大和缩小图像并通过 Kinect 旋转图像。到目前为止,它适用于任何一种情况。我想要的是,如果我旋转了图像,则在缩放时会保存新值,因此我会放大已旋转 X 度的图像。我现在的方式是,如果我先旋转然后尝试缩放,图像会回到初始阶段。

        private void TrackDistances(Skeleton skeleton)
{
if (skeleton.TrackingState == SkeletonTrackingState.Tracked)
{
...
if (wristLeft.Y > shoulderLeft.Y && wristRight.Y > shoulderRight.Y)
{
float distance = Math.Abs(wristLeft.X - wristRight.X);
image_Zoom(distance);
}

if (wristLeft.Y < shoulderLeft.Y && wristRight.Y < shoulderRight.Y)
{
angleDeg = GetJointAngle(zeroPoint, anglePoint);
image_Rotate(angleDeg);
}
}
}
private void image_Zoom(float distance)
{
//TransformGroup transformGroup = (TransformGroup)image.RenderTransform;
//ScaleTransform scale = (ScaleTransform)transformGroup.Children[0];
//double zoom = distance * 1.5;
//scale.ScaleX = zoom;
//scale.ScaleY = zoom;

double zoom = distance * 1.5;
double ScaleX = zoom;
double ScaleY = zoom;
ScaleTransform scale = new ScaleTransform(ScaleX, ScaleY);
image.RenderTransform = scale;
}

private void image_Rotate(double angleDeg)
{
var angle = angleDeg - 180;
RotateTransform rotate = new RotateTransform(angle);
image.RenderTransform = rotate;
}

有什么建议吗?

谢谢!

最佳答案

我认为这是因为您将 RenderTransform 更改为 ScaleTranform 或 RotateTransform。您可以在XAML中设置图片的ScaleTransform和RotateTransform,在后面的代码中改变angle或zoom参数即可。

另见这里: How can I do both zoom and rotate on an inkcanvas?

关于kinect - 使用 Kinect 进行图像处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11140345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com