首先,当我使用CMake使用此命令生成OpenCV 3.1的解决方案时:
set VLD_DIR=vld_dir
mkdir %VLD_DIR%
set OPENCV_TEST_DATA_PATH=..\..\opencv_extra
set OPENCV_PERF_VALIDATION_DIR=%VLD_DIR%
cmake .. -G "Visual Studio 14 2015" -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0
然后使用Visual Studio 2015构建它,我有一堆错误,其中一个是:
Error C2653 'CameraOptionsUI': is not a class or namespace name opencv_videoio G:\opencv\modules\videoio\src\cap_winrt\CaptureFrameGrabber.cpp 100
然后当我尝试再次使用visual studio 2015为Windows 10制作一个空白的通用应用程序时,请在随机函数上输入:
Windows::Media::Capture::
intellisense永远不会引导我进入CameraOptiosUI。奇怪的是,当我去MSN网站时: https://msdn.microsoft.com/en-us/library/windows/apps/windows.media.capture.cameraoptionsui.aspx, 看起来这个类确实存在。 Windows 10平台中的类在哪里?
另一个信息: 我建立了OpenCV,但是对于UWP版本8.1,我成功了。然后我来到与上面的错误相同的行(CaptureFrameGrabber.cpp第100行),它指向我的类ref类Windows :: Media :: Capture :: CameraOptionsUI。为什么在版本10中,我不能再指向那个类了?它改变了API吗?
抱歉我的英语不好。
答案 0 :(得分:3)
来自Lucian Wischik的博客
如何为UWP构建OpenCV本机dll OpenCV在GitHub上。截至2015年11月,有三个相关的分叉/分支机构:
1 https://github.com/itseez/opencv
import java.io.File;
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
public class HTMLDataExtraction {
public static void main(String[] args) throws IOException {
Document document = Jsoup.parse(new File("A:/Workspaces/MarsWorkspace/jSoupExample/src/main/java/com/URLs/jSoupExample/HTMLParser.html"),
"UTF-8"); //Use execute method Or corresponding Http Methods while connecting to particular URI
document.select("#img3464864").forEach(element -> {
System.out.println("ITEM_IMG :" + element.attr("src")); // use absUrl(), to get absolute URL
});
document.select("td.item_name > div [itemprop]").forEach(element -> {
if (element.hasClass("cpa"))
System.out.println("ITEM_NAME :" + element.text());
if (element.hasClass("item_desc"))
System.out.println("ITEM_DESCRIPTION :" + element.text());
});
document.select("td.item_price").forEach(element -> {
System.out.println("ITEM_PRICE:" + element.text());
});
}
}
存储库1是主人。在其中,使用CMake为所有不同平台构建本机OpenCV二进制文件。据我所知,此存储库仅通过CMake支持构建Windows应用商店和Windows Phone 8.0和8.1应用。它似乎没有UWP。它还要求你根据readme.txt安装一些特定的旧版VS.
Fork [2]似乎没有带来任何新东西。
Branch [3]包含Visual Studio .sln文件,您可以从中创建所有本机OpenCV二进制文件的UWP版本:x86,x64和ARM,Debug和Release。 Release版本实际上有点不稳定,但我提交了PR#69以使它们构建正确。所以:如果你克隆这个存储库,选择这个分支,设置一个环境变量,然后打开vs2015 / WS / 10.0 / ARM / OpenCV.sln,或者x86 / OpenCV.sln,或者x64 / OpenCV.sln,那你就可以成功了为OpenCV构建UWP二进制文件。这将为每个架构+构建组合生成15个二进制文件。
http://blogs.msdn.com/b/lucian/archive/2015/11/28/opencv-building-uwp-binaries.aspx
答案 1 :(得分:0)
如果要使用CameraOptionsUI-Class,可以在Solution Explorer中为其添加所需的Reference。在“参考”下 - 菜单。右键单击和“添加引用”应该为您提供添加扩展的菜单。在那里,您将找到Desktop-UWP-Apps的扩展或类似的东西。只需添加它们,您的Visual Studio就应该找到CameraOptionsUI-Class。此类适用于Desktop-Apps;)