C# 如何使用Xamarin(Android和iOS)的OpenCV?
我想为iOS和Android创建一个使用Xamarin的移动应用程序,我想调用一些OpenCV函数(例如,轮廓检测和透视变换) <>我通常理解从C++中调用C++函数的过程,但我不知道如何从iOS和Android中提供。有一个支持Xamarin.Android的应用程序,但它不支持Xamarin.iOSC# 如何使用Xamarin(Android和iOS)的OpenCV?,c#,c++,ios,opencv,xamarin,C#,C++,Ios,Opencv,Xamarin,我想为iOS和Android创建一个使用Xamarin的移动应用程序,我想调用一些OpenCV函数(例如,轮廓检测和透视变换) 我通常理解从C++中调用C++函数的过程,但我不知道如何从iOS和Android中提供。有一个支持Xamarin.Android的应用程序,但它不支持Xamarin.iOS 我还没有打算将整个OpenCV库移植到Xamarin。我只是想调用一小部分函数。对于iOS,您应该自己为Objective-C提供绑定。这里是一个如何做的例子,代码不是我的 以下是一篇文章,介绍了
我还没有打算将整个OpenCV库移植到Xamarin。我只是想调用一小部分函数。对于iOS,您应该自己为Objective-C提供绑定。这里是一个如何做的例子,代码不是我的 以下是一篇文章,介绍了以下步骤:
我终于开始这样做了,经过几个小时的尝试,它终于奏效了。然而,这种方法的一个问题(我已经问过)是,我的应用程序最终大小超过300 MB,因为opencv2.framework太大了。我认为你需要将[Export(“version:”)]更改为[Export(“version”)],否则它会崩溃,因为它希望传递参数。
[BaseType(typeof(NSObject))]
interface OpenCV
{
[Export("version:")]
NSString Version();
}
private OpenCV OpenCV = new OpenCV();
Console.WriteLine(OpenCV.Version());