我正在尝试在我的应用上拍摄负片无图像。 图像位于android项目中可绘制的文件夹中。
我尝试仅使用图像名称,就像图像 xaml :
<Image x:Name="img"
Source="thanos.jpg" />
c#:
Mat image = CvInvoke.Imread("thanos.jpg", ImreadModes.AnyColor);
但是我得到了一个例外:System.ArgumentException : File thanos.jpg do not exist
我尝试在路径中添加可绘制的资源,/,\,但仍然存在相同的错误。
有什么想法吗?
答案 0 :(得分:0)
此解决方案仅适用于android atm。
首先,添加android路径private const string pathAndroid = "/storage/emulated/0/Android/data/com.companyname.**YourAppName**/files"
,因为System.Environment.GetFolderPath(System.Environment.SpecialFolder.**WhateverYouChooseThere**)
链接到其他文件夹。
然后Imread确实需要一个文件,因此我直接在手机中添加了该文件(我的应用程序已包含图像),并将路径与文件名结合在一起:
var pathfile = Path.Combine(pathAndroid + "/hello.JPG"); //whatever your file name
最终,我可以使用Imread了:
Mat img = CvInvoke.Imread(pathfile);
CvInvoke.CvtColor(img, img, ColorConversion.Rgb2Gray);
CvInvoke.Imwrite(pathAndroid + "/result.JPG", img); //save the image