gpt4 book ai didi

iphone - Opencv cvvideocamera 输出捕获 session

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:47:18 25 4
gpt4 key购买 nike

我正在使用 openCV 进行一些实时视频处理。事实上,在进行处理时屏幕有点不稳定。我想做的仍然是像往常一样通过 CvVideoCameraDelegate 方法处理图像,但只向用户显示捕获 session 视频输出,应该不那么断断续续。

我在委托(delegate)回调方法中完成了所有的视频处理

- (void)processImage:(Mat&)image;

因此,当我加载 View 时,我尝试对其进行设置,以便捕获 session 是输出的内容。看起来您可以像这样访问 CVVideoCamera 的捕获 session :

AVCaptureSession *session = videoCamera.captureSession;

那么,我的布局文件中有一个 View ,我想将它连接到名为 baseView 的 View 。我尝试这样做:

AVCaptureVideoPreviewLayer *previewLayer = [AVCaptureVideoPreviewLayer layerWithSession:session];
CGRect screenRect = baseView.bounds;
previewLayer.frame = screenRect; // Assume you want the preview layer to fill the view.
[baseView.layer addSublayer:previewLayer];

但是这不起作用。只是一个普通的白色屏幕。我可以看出视频处理仍在后台进行,但无论如何都没有输出视频。

编辑:请注意,我不只是设置了一个额外的捕获 session 来执行此操作,因为我试图限制 CPU 任务

最佳答案

好吧,我想通了:

我试着输入

BOOL loaded = videoCamera.captureSessionLoaded;

事实证明相机没有装满。事实上,在您开始捕获之前它不会完全加载(显然我猜?)

所以只要我把我的代码放在下面

[self.videoCamera start];

一切似乎都按预期进行

关于iphone - Opencv cvvideocamera 输出捕获 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13386885/

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