我CMakeLists.txt包含这一行:
file(GLOB lib_srcs Half/half.cpp Iex/*.cpp IlmThread/*.cpp Imath/*.cpp IlmImf/*.cpp)
和IlmImf文件夹包含b44ExpLogTable.cpp,我需要从构建中排除.
怎么实现呢?
我只花了很长时间才能让openCV在Ubuntu 12.04中正确链接,并且我认为我会为了别人的利益分享我学到的东西.
OpenCV现在可以在Ubuntu存储库中使用
sudo apt-get install libopencv-dev
Run Code Online (Sandbox Code Playgroud)
这很棒,但我相信(请纠正我,如果我错了)这个版本的opencv有不同的库命名约定.主要区别在于c ++中的include行应该读取
#include "opencv2/opencv.hpp"
Run Code Online (Sandbox Code Playgroud)
这将使您的代码编译为对象但不链接.另一个区别是静态库也已从libcv*重命名为libopencv*.例如,二进制文件现在可以位于
/usr/lib/libopencv_core.so
/usr/lib/libopencv_highgui.so
.
.
.
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,我需要通过将编译器命令更改为显式告诉链接器有关新库名的信息
g++ main.cpp -lopencv_core -lopencv_highgui ...
Run Code Online (Sandbox Code Playgroud)
或者在CMake中
target_link_libraries(main opencv_core opencv_highgui ...)
Run Code Online (Sandbox Code Playgroud)
我希望这有帮助.如果有人比我更了解,我很想知道这里发生了什么.
-麦克风
我正在尝试编译一个使用OpenCV来评分两个图像相似度的C++程序:
当我g ++编译文件时:
'opencv2/imgcodecs.hpp' file not found
#include "opencv2/imgcodecs.hpp"
Run Code Online (Sandbox Code Playgroud)
我在Mac OS X上更新了opencv公式.我重新运行brew install,但我仍然遇到此错误.
mdfind imgcodecs.hpp -name
Run Code Online (Sandbox Code Playgroud)
什么都不返回 - 我的系统上没有文件.
有谁知道我的imgcodecs不包括在内,以及如何包含它?我是C和OpenCV的新手,非常感谢任何帮助.
我试图安装(很多次)OpenCV 3.0 for python with extra package(sift,surf ......)但我总是失败,我真的卡住了.我尝试在主要环境中使用虚拟环境,
这是我做的:
cd git
git clone https://github.com/Itseez/opencv_contrib.git
cd ..
wget https://github.com/Itseez/opencv/archive/3.0.0-beta.zip
unzip 3.0.0-beta.zip
cd opencv-3.0.0-beta/
mkdir release
cd release/
workon OCR
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/home/jbd/src/opencv-3.0.0b -D OPENCV_EXTRA_MODULES_PATH=/home/jbd/git/opencv_contrib/modules -D BUILD_opencv_python3=ON -D PYTHON2_EXECUTABLE=/home/jbd/.virtualenv/OCR/bin/python -D PYTHON_INCLUDE_DIR=/home/jbd/.virtualenv/OCR/include/python2.7 -D PYTHON_LIBRARY=/usr/lib/libpython2.7.so -D PYTHON2_NUMPY_INCLUDE_DIRS=/home/jbd/.virtualenv/OCR/local/lib/python2.7/site-packages/numpy ..
make -j7
make install
cd ~/.virtualenv/OCR/lib/python2.7/site-packages/
ln -s /home/jbd/src/opencv-3.0.0b/lib/python2.7/site-packages/cv2.so
Run Code Online (Sandbox Code Playgroud)
无论我尝试安装它的方式如何,我总是得到:
回溯(最近一次调用最后一次):文件"/home/jbd/git/ocr/test.py",第10行,在sift = cv2.xfeatures2d.SIFT()属性错误:'module'对象没有属性'SIFT'
有:
import numpy as np
import cv2
sift = cv2.xfeatures2d.SIFT()
Run Code Online (Sandbox Code Playgroud)
如果有人看到我错了...
非常感谢
我有一个iOS应用程序,它使用MPL的一个名为'square.h'的C++类,每当我构建应用程序时Xcode都会抛出此错误 -
无法将默认参数添加到类模板成员的外联定义中
现在,我对C++语法的理解很少,那么这个错误意味着什么呢?
有问题的线在下面 -
template <class T>
TSquare<T>::TSquare (T size_, T x_, T y_, T scale_=0)
{
size = size_;
x = x_;
y = y_;
scale = scale_;
}
Run Code Online (Sandbox Code Playgroud) 我从http://face.ci2cv.net/下载了面部分析SDK的源代码.现在我想让它运行起来.我下载了所有必要的软件并按照安装说明进行操作.当我尝试执行cmake [options]时...我收到一个错误.
CMake Error at CMakeLists.txt:21(find_package):
Could not find a package configuration file provided by "OpenCV" with any of the following names:
OpenCVConfig.cmake
opencv-comfig.cmake
Add the installation prefix of "OpenCV" to CMAKE_PREFIX_PATH or set "OpenCV_DIR" to a directory
containing one of the above files. If OpenCV provides a separate development package or SDK,
be sure it has been installed.
Run Code Online (Sandbox Code Playgroud)
CMakeLists.txt看起来像这样
# -*-cmake-*-
PROJECT(CSIRO-FaceAnalysis-SDK)
cmake_minimum_required(VERSION 2.8)
#set(CMAKE_VERBOSE_MAKEFILE true)
# Default values for options
if(NOT DEFINED OpenCV_PREFIX)
set(OpenCV_PREFIX ${CMAKE_INSTALL_PREFIX})
endif() …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个可以使用您的计算机网络摄像头检测心跳的应用程序.我从2周开始编写代码并开发了这段代码,到目前为止我已经完成了
它是如何工作的?如下图所示......
在这里,我需要帮助从FFT频谱中提取心跳.谁能帮我.在这里,是在python中开发的类似应用程序,但我无法解释这个代码,所以我在开发过程中开发相同.任何人都可以帮助我低估这个python代码中提取心跳的部分.
//---------import required ilbrary -----------
import gab.opencv.*;
import processing.video.*;
import java.awt.*;
import java.util.*;
import ddf.minim.analysis.*;
import ddf.minim.*;
//----------create objects---------------------------------
Capture video; // camera object
OpenCV opencv; // opencv object
Minim minim;
FFT fft;
//IIRFilter filt;
//--------- Create ArrayList--------------------------------
ArrayList<Float> poop = new ArrayList();
float[] sample;
int bufferSize = 128;
int sampleRate = 512;
int bandWidth = 20;
int centerFreq = 80;
//---------------------------------------------------
void setup() {
size(640, 480); // size of …Run Code Online (Sandbox Code Playgroud) 我试图用Coldfusion和JavaLibrary解析CSV文件.我找到了一些例子,但似乎ColdFusion找不到Jar-File.
这是我的代码:
<cfset t01= getTickCount()>
<cfscript>
fileReader = createobject("java","java.io.FileReader");
fileReader.init("C:\Dev\files.csv");
csvReader = createObject("java","au.com.bytecode.opencsv.CSVReader");
csvReader.init(fileReader, ",");
</cfscript>
<cfset t02= getTickCount()>
<cfset ArrayData = csvReader.readAll()>
<cfset t03= getTickCount()>
<cfoutput>
Process Data: #t02 - t01# ms
Display Dump: #t03 - t02# ms
<cfdump var="ArrayData"><cfabort />
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
这是ErrorMessage:
java.lang.ClassNotFoundException: au.com.bytecode.opencsv.CSVReader
at coldfusion.bootstrap.BootstrapClassLoader.loadClass(BootstrapClassLoader.java:235)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248).....more Stack blabla......
Run Code Online (Sandbox Code Playgroud)
我正在使用opencsv库.Jar文件位于以下文件夹中:
wwwroot的/ WEB-INF/lib中
我也多次重启服务器.
谢谢你的帮助!
我已经成功测试了hadoop中的opencv,以便在mapreduce作业中读取和分析来自本地文件系统的图像.
但是如何启用opencv从HDFS而不是本地文件系统读取图像?
我正在尝试创建一个Android应用.它始终以纵向模式显示相机预览,并对其(某些)帧执行一些繁重的图像处理操作.因此,我正在使用OpenCV(它的OpenCV4Android和本机C/C++组件).问题是当使用CameraBridgeViewBase或JavaCameraView类时,OnCameraFrame返回的帧处于横向模式.
现在,如果将Activity定义为使用横向模式(就像OpenCV的示例应用程序一样),预览看起来很好,但任何其他UI视图都倾斜了90度(如前所述,设备应该以纵向模式运行我的应用程序).
如果"活动"设置为纵向模式,UI视图显然看起来正确,但相机预览将倾斜90度.
如果我尝试通过操作OnCameraFrame上的图像矩阵来旋转每个帧,如下所示:
public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
mRgba = inputFrame.rgba();
Core.transpose(mRgba,mRgbaT);
Core.flip(mRgbaT, mRgbaT, -1);
Imgproc.resize(mRgbaT, mRgbaT, mRgba.size());
return mRgbaT;
}
Run Code Online (Sandbox Code Playgroud)
然后每个相机的框架填充设备的宽度,但不是它的高度(因此,它看起来像拉伸),加上 - 它大大减慢了帧速率.尝试将图像调整为全屏(或任何不同于原始帧大小的大小)会导致根本不显示图像(黑屏)并抛出以下异常:
E/CameraBridge(11183): Utils.matToBitmap() throws an exception: /home/reports/ci/slave_desktop/50-SDK/opencv/modules/java/generator/src/cpp/utils.cpp:97: error: (-215) src.dims == 2 && info.height == (uint32_t)src.rows && info.width == (uint32_t)src.cols in function void Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv*, jclass, jlong, jobject, jboolean)
Run Code Online (Sandbox Code Playgroud)
所以,我的问题是:如何在纵向模式和全屏模式下显示OpenCV的相机预览?
不幸的是,由于我的初学者声誉,我不能附加屏幕截图.此外,我知道之前有过类似问题的问题,但没有一个答案似乎完全解决了问题.