gpt4 book ai didi

objective-c - Objective-C 中框架的水平翻转

转载 作者:太空狗 更新时间:2023-10-30 03:59:50 27 4
gpt4 key购买 nike

我正在尝试为我的程序(流式传输网络摄像头)创建一个过滤器,使框架水平翻转,使网络摄像头像镜子一样。

但是,在编译和运行的过程中,过滤器似乎对其没有任何影响。

代码如下:

CIImage *resultImage = image;
CIFilter *flipFilter = [CIFilter filterWithName:@"CIAffineTransform"];
[flipFilter setValue:resultImage forKey:@"inputTransform"];

NSAffineTransform* flipTransform = [NSAffineTransform transform];
[flipTransform scaleXBy:-1.0 yBy:1.0]; //horizontal flip
[flipFilter setValue:flipTransform forKey:@"inputTransform"];

resultImage = [flipFilter valueForKey:@"outputImage"];

奇怪的是,其他过滤器似乎也有效。例如:

CIFilter * ciEffectFilter = [CIFilter filterWithName:@"CIGloom"];
[ciEffectFilter setDefaults];
CIImage *resultImage = image;
[ciEffectFilter setValue: resultImage forKey:@"inputImage"];
[ciEffectFilter setValue:[NSNumber numberWithFloat: 0.75]
forKey:@"inputIntensity"];
[ciEffectFilter setValue:[NSNumber numberWithFloat: 20]
forKey:@"inputRadius"];
resultImage = [ciEffectFilter valueForKey:@"outputImage"];


CIFilter *ciCropFilter = [CIFilter filterWithName:@"CICrop"];
[ciCropFilter setDefaults];
[ciCropFilter setValue: resultImage forKey:@"inputImage"];
[ciCropFilter setValue: [CIVector vectorWithX:50 Y:50 Z:300 W:
300] forKey:@"inputRectangle"];

resultImage = [ciCropFilter valueForKey:@"outputImage"];

和 NSAffineTransform 有关系吗?我环顾四周,但没有找到任何答案。多谢!

最佳答案

我不确定这是否是问题所在,但在您的第一个代码片段中,您为同一个键设置了两个不同的值(您设置了 inputTransform 两次),我认为第一个应该改为 inputImage。请尝试以下操作:

CIImage *resultImage = image;
CIFilter *flipFilter = [CIFilter filterWithName:@"CIAffineTransform"];
[flipFilter setValue:resultImage forKey:@"inputImage"];

NSAffineTransform* flipTransform = [NSAffineTransform transform];
[flipTransform scaleXBy:-1.0 yBy:1.0]; //horizontal flip
[flipFilter setValue:flipTransform forKey:@"inputTransform"];

resultImage = [flipFilter valueForKey:@"outputImage"];

此外,您可能需要将 X 轴平移图像的宽度

[flipTransform translateXBy:... yBy:0];

关于objective-c - Objective-C 中框架的水平翻转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4778119/

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