小编Cli*_*ive的帖子

OpenCV 3.0安装麻烦

我需要OpenCV3.0,因为它支持我需要的一些新功能.我使用以下代码进行安装(我已经使用此代码成功安装了OpenCV 2.4.9.但对于OpenCV 3.0,在执行cmake部分时,由于MD5校验和不匹配而弹出一些错误)

mkdir OpenCV
cd OpenCV
echo "Removing any pre-installed ffmpeg and x264"
sudo apt-get -qq remove ffmpeg x264 libx264-dev
echo "Installing Dependenices"
sudo apt-get -qq install libopencv-dev build-essential checkinstall cmake pkg-config yasm libjpeg-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.0-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils ffmpeg
echo "Installing OpenCV" $version
unzip OpenCV-3.0.zip #i manually installed opencv3.0 zipfile for linux from https://github.com/Itseez/opencv/archive/3.0.0-alpha.zip
cd opencv-3.0.0-alpha
mkdir build
cd build …
Run Code Online (Sandbox Code Playgroud)

installation opencv checksum md5 cmake

14
推荐指数
3
解决办法
4万
查看次数

OpenCV3.0 - 模块没有属性SIFT

我使用的是Ubuntu 12.04.我最近从https://github.com/Itseez/opencv/archive/3.0.0-alpha.zip安装了OpenCV 3.0 .我想做功能匹配,我使用了以下代码:

import numpy as np
import cv2
from matplotlib import pyplot as plt

MIN_MATCH_COUNT = 10

img1 = cv2.imread('box.png',0)          # queryImage
img2 = cv2.imread('box_in_scene.png',0) # trainImage

# Initiate SIFT detector
sift = cv2.SIFT()

# find the keypoints and descriptors with SIFT
kp1, des1 = sift.detectAndCompute(img1,None)
kp2, des2 = sift.detectAndCompute(img2,None)

FLANN_INDEX_KDTREE = 0
index_params = dict(algorithm = FLANN_INDEX_KDTREE, trees = 5)
search_params = dict(checks = 50)

flann = cv2.FlannBasedMatcher(index_params, search_params)

matches = flann.knnMatch(des1,des2,k=2)

# store all …
Run Code Online (Sandbox Code Playgroud)

attributes opencv matching sift

9
推荐指数
1
解决办法
2万
查看次数

Matplotlib:imshow中cmap的功能是什么?

我正在尝试使用python学习opencv并遇到以下代码:

import cv2
import numpy as np
from matplotlib import pyplot as plt

BLUE = [255,0,0]

img1 = cv2.imread('opencv_logo.png')
replicate = cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_REPLICATE)
reflect = cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_REFLECT)
reflect101 = cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_REFLECT_101)
wrap = cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_WRAP)
constant= cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_CONSTANT,value=BLUE)

plt.subplot(231),plt.imshow(img1,'gray'),plt.title('ORIGINAL')
plt.subplot(232),plt.imshow(replicate,'gray'),plt.title('REPLICATE')
plt.subplot(233),plt.imshow(reflect,'gray'),plt.title('REFLECT')

plt.subplot(234),plt.imshow(reflect101,'gray'),plt.title('REFLECT_101')
plt.subplot(235),plt.imshow(wrap,'gray'),plt.title('WRAP')
plt.subplot(236),plt.imshow(constant,'gray'),plt.title('CONSTANT')

plt.show()
Run Code Online (Sandbox Code Playgroud)

来源:http://docs.opencv.org/master/doc/py_tutorials/py_core/py_basic_ops/py_basic_ops.html#exercises

plt.imshow(img1,'grey')有什么作用?我尝试搜索谷歌,我所能理解的是"灰色"参数是彩色地图.但我的图像(图片在网站上有图片.请参阅链接)不会以灰度显示.我尝试删除第二个参数.所以代码就像plt.imshow(img1).它执行.图像与以前保持一致.那么第二个参数"灰色"是做什么的呢?有人可以向我解释这一切吗?任何帮助赞赏.谢谢.

PS.我对Matplotlib完全不熟悉

python opencv matplotlib imshow colormap

8
推荐指数
1
解决办法
4万
查看次数

opencv ubuntu 12.04 Cmake错误:源目录似乎不包含CmakeLists.txt

我正在使用Ubuntu 12.04.我试图使用http://karytech.blogspot.in/2012/05/opencv-24-on-ubuntu-1204.html中显示的步骤安装OpenCV

但是当涉及到编译步骤时,我收到一个错误:

clive@clive-Aspire-4755:~/OpenCV-2.4.0/build$ cmake -D WITH_QT=ON -D WITH_XINE=ON -D WITH_OPENGL=ON -D WITH_TBB=ON -D BUILD_EXAMPLES=ON ..

CMake Error: The source directory "/home/clive" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
Run Code Online (Sandbox Code Playgroud)

谁能帮我?

注意:CMakeLists.txt文件存在于OpenCV-2.4.0文件夹中,而不是内部版本.

c++ terminal ubuntu opencv cmake

6
推荐指数
1
解决办法
3万
查看次数

使用 OpenCV 的视觉里程计

我正在尝试在 OpenCV Python 中实现单目(单相机)视觉里程计。维基百科在这里给出了常用的方法步骤http://en.wikipedia.org/wiki/Visual_odometry 我使用 Lucas Kanade 跟踪器计算了光流。代码在这里给出http://docs.opencv.org/trunk/doc/py_tutorials/py_video/py_lucas_kanade/py_lucas_kanade.html Wiki上的步骤4说“检查流场向量是否存在潜在的跟踪错误并删除异常值”。我如何在 OpenCV (python) 中执行此操作?我应该使用什么算法/函数?那么第 5 步和第 6 步呢?我在某处读到(请参阅第三条评论http://opencv-users.1802565.n2.nabble.com/optical-flow-with-kalman-filter-td6578617.html)如果卢卡斯·卡纳德(Lucas Kanade)卡尔曼滤波器不会在性能上提供任何改进用来。

python opencv

5
推荐指数
1
解决办法
8834
查看次数

OpenCV Python视频播放 - 如何为cv2.waitKey()设置正确的延迟

我使用以下代码捕获视频文件,翻转并保存.

#To save a Video File

import numpy as np
import cv2

cap = cv2.VideoCapture(0)

# Define the codec and create VideoWriter object
fourcc = cv2.cv.CV_FOURCC(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 20.0, (640,480))

while(cap.isOpened()):
    ret, frame = cap.read()
    if ret==True:
        frame = cv2.flip(frame,0)

        # write the flipped frame
        out.write(frame)

        cv2.imshow('frame',frame)
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break
    else:
        break

# Release everything if job is finished
cap.release()
out.release()
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

该程序将输出保存为output.avi

现在,为了播放视频文件,我使用了以下程序

#Playing Video from File

import numpy as np
import cv2

cap …
Run Code Online (Sandbox Code Playgroud)

python video opencv frame-rate delay

4
推荐指数
1
解决办法
2万
查看次数

两个信号的互相关

我想找到两个信号x1和x2之间的相关性.

x1 = [1 1 1 1 1]
x2 = [1 1 1 1 1]
r1 = xcorr(x1,x2) //function in matlab to find cross correlation of x1 and x2
Run Code Online (Sandbox Code Playgroud)

x1和x2都是这样的 x1或x2

他们的互相关看起来像这样 R1

我知道相关性测量两个信号之间的相似程度,给出对应于最大相似性的点的最高值(两个信号相对于彼此移位以测量不同点处的相似性对吗?).因此,在这种情况下,互相关应该在所有点都给出高值,但事实并非如此.最大值位于第5位.这是为什么?谁可以给我解释一下这个?

matlab signals correlation

3
推荐指数
1
解决办法
2721
查看次数

实时轨迹绘制 - Matplotlib

我想使用 matplotlib 绘制轨迹。在我编写的程序的每次迭代中,我都会获得一个对象的 x 和 y 坐标。我想在 xy 图上绘制此对象的运动。我使用了以下代码:

import matplotlib.pyplot as plt
from matplotlib.path import Path
import matplotlib.patches as patches
import time

fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_xlim(-100,100)
ax.set_ylim(-100,100)
plt.ion()
plt.show(block=True)

verts = [
    (0, 0), #I'm just assuming two sets of points here. I actually intend to put variables here which I can update in real time.
    (27, 0)
    ]

codes = [Path.MOVETO,
         Path.LINETO]  

path = Path(verts, codes)

#fig = plt.figure()
#ax = fig.add_subplot(111)
patch = patches.PathPatch(path, …
Run Code Online (Sandbox Code Playgroud)

python plot real-time matplotlib

3
推荐指数
1
解决办法
3207
查看次数