我正在尝试制作一个结合Haar Cascade Classification和Lucas Kanade良好特征检测的人脸跟踪器.但是,我不断收到一个错误,我无法弄清楚它的含义以及如何解决它.
有人能帮我一下吗?
错误:
line 110, in <module>
cv2.imshow('frame',img)
error: /build/buildd/opencv-2.4.8+dfsg1/modules/highgui/src/window.cpp:269:
error: (-215)size.width>0 && size.height>0 in function imshow
Run Code Online (Sandbox Code Playgroud)
码:
from matplotlib import pyplot as plt
import numpy as np
import cv2
face_classifier = cv2.CascadeClassifier('haarcascades/haarcascade_frontalface_default.xml')
cap = cv2.VideoCapture(0)
# params for ShiTomasi corner detection
feature_params = dict( maxCorners = 200,
qualityLevel = 0.01,
minDistance = 10,
blockSize = 7 )
# Parameters for lucas kanade optical flow
lk_params = dict( winSize = (15,15),
maxLevel = 2,
criteria = (cv2.TERM_CRITERIA_EPS …Run Code Online (Sandbox Code Playgroud) 我的按钮使用AJAX向数据库添加信息并更改按钮文本.但是,我希望在单击后禁用该按钮(否则该人可以在数据库中垃圾邮件).我该怎么做呢?
HTML
<button class="btn btn-lg btn-primary" id='roommate_but' onclick='load(<?php echo $user_id;?>)'><span class="glyphicon glyphicon-plus"></span> Add Person</button>
Run Code Online (Sandbox Code Playgroud)
Javascript/AJAX/JQuery
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
function load(recieving_id){
if (window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest();
} else{
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200){
document.getElementById("roommate_but").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open('GET','include.inc.php?i=' + recieving_id, true);
xmlhttp.send();
}
Run Code Online (Sandbox Code Playgroud) 我想得到它所做的每个预测的置信度分数,显示分类器对预测它是否正确的肯定程度.
我想要这样的东西:
分类器的预测有多确定?
1级:81%表示1
级2级:10%
3级:6%
4级:3%
我的代码示例:
features_train, features_test, labels_train, labels_test = cross_validation.train_test_split(main, target, test_size = 0.4)
# Determine amount of time to train
t0 = time()
model = SVC()
#model = SVC(kernel='poly')
#model = GaussianNB()
model.fit(features_train, labels_train)
print 'training time: ', round(time()-t0, 3), 's'
# Determine amount of time to predict
t1 = time()
pred = model.predict(features_test)
print 'predicting time: ', round(time()-t1, 3), 's'
accuracy = accuracy_score(labels_test, pred)
print 'Confusion Matrix: '
print confusion_matrix(labels_test, pred)
# Accuracy in …Run Code Online (Sandbox Code Playgroud) 我正在尝试制作一个计算机视觉程序,它可以在嘈杂的背景(如沙滩)中检测垃圾和随机垃圾.
原始图片:
没有任何图像处理的Canny边缘检测:
我意识到图像处理技术的某种组合将帮助我实现忽略嘈杂的沙质背景并检测地面上所有垃圾和物体的目标.
我尝试预先形成中位数模糊,玩转并调整参数,它给了我这个:
它在忽略沙质背景方面表现良好,但它无法检测到地面上的其他许多物体,可能是因为它模糊了(不太确定).
有没有办法改进我的算法或图像处理技术,忽略嘈杂的沙质背景,同时允许精确边缘检测找到所有对象,让程序检测并绘制所有对象的轮廓.
码:
from pyimagesearch.transform import four_point_transform
from matplotlib import pyplot as plt
import numpy as np
import cv2
import imutils
im = cv2.imread('images/beach_trash_3.jpg')
#cv2.imshow('Original', im)
# Histogram equalization to improve contrast
###
#im = np.fliplr(im)
im = imutils.resize(im, height = 500)
imgray = cv2.cvtColor(im,cv2.COLOR_BGR2GRAY)
# Contour detection
#ret,thresh = cv2.threshold(imgray,127,255,0)
#imgray = cv2.GaussianBlur(imgray, (5, 5), 200)
imgray = cv2.medianBlur(imgray, 11)
cv2.imshow('Blurred', imgray)
'''
hist,bins = np.histogram(imgray.flatten(),256,[0,256])
plt_one = plt.figure(1)
cdf = hist.cumsum()
cdf_normalized = …Run Code Online (Sandbox Code Playgroud) opencv image-processing computer-vision edge-detection opencv-contour
我正在尝试使用一个程序来检测黑色的任何色调(和一些轻微的灰色),但目前我在尝试找到一个好的上色调向量(upper_hue 变量)时遇到了困难,该向量可以让我在不提取的情况下提取大部分黑色色调其他颜色。它似乎适用于黑色鞋子或雨伞等图片,但在处理亮度变化的道路照片时会出现问题。
我试图找到一个好的上限色调范围,使程序能够对此保持稳健,但是它有可能获得非黑色。
什么是黑色和灰色值的好的上色相向量。如果这不是问题,那么解决这个问题的好方法是什么?
代码:
import cv2
import numpy as np
import imutils
def color_seg(choice):
if choice == 'blue':
lower_hue = np.array([100,30,30])
upper_hue = np.array([150,148,255])
elif choice == 'white':
lower_hue = np.array([0,0,0])
upper_hue = np.array([0,0,255])
elif choice == 'black':
lower_hue = np.array([0,0,0])
upper_hue = np.array([50,50,100])
return lower_hue, upper_hue
# Take each frame
frame = cv2.imread('images/black0.jpg')
#frame = cv2.imread('images/road_1.jpg')
frame = imutils.resize(frame, height = 300)
chosen_color = 'black'
# Convert BGR to HSV
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
# define range of …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用我在这里找到的示例脚本来获取 OpenCV 图像并将其转换为 rtp/rtsp 流:
https://github.com/madams1337/python-opencv-gstreamer-examples/blob/master/gst_device_to_rtp .py
这是脚本的描述:
“gst_device_to_rtp 抓取 VideoCapture(0),对帧进行编码并将其流式传输到 rtp://localhost:5000”
这是我尝试使用的代码
# Cam properties
fps = 30.
frame_width = 1920
frame_height = 1080
# Create capture
#cap = cv2.VideoCapture(0)
# Set camera properties
cap.set(cv2.CAP_PROP_FRAME_WIDTH, frame_width)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, frame_height)
cap.set(cv2.CAP_PROP_FPS, fps)
# Define the gstreamer sink
gst_str_rtp = "appsrc ! videoconvert ! x264enc noise-reduction=10000 tune=zerolatency byte-stream=true threads=4 " \
" ! h264parse ! mpegtsmux ! rtpmp2tpay ! udpsink host=127.0.0.1 port=5000"
# Create videowriter as a SHM sink
out = cv2.VideoWriter(gst_str_rtp, …Run Code Online (Sandbox Code Playgroud) 我无法理解 sklearn 的函数,希望得到一些澄清。起初我以为sklearn的SVM的predict_proba函数给出了分类器预测的置信度,但是在使用我的情绪识别程序使用它之后,我开始产生怀疑,感觉我误解了predict_proba函数的用途和方式工作了。
例如,我的代码设置如下:
# Just finished training and now is splitting data (cross validation)
# and will give an accuracy after testing the accuracy of the test data
features_train, features_test, labels_train, labels_test = cross_validation.train_test_split(main, target, test_size = 0.4)
model = SVC(probability=True)
model.fit(features_train, labels_train)
pred = model.predict(features_test)
accuracy = accuracy_score(labels_test, pred)
print accuracy
# Code that records video of 17 frames and forms matrix know as
# sub_main with features that would be fed into SVM
# Few lines of …Run Code Online (Sandbox Code Playgroud) python classification machine-learning probability scikit-learn
我正在尝试在OpenCV中制作增强现实程序.但是当我调用solvePnP时,我似乎总是遇到错误.
我想要做的是在OpenCV中制作一个增强现实程序,将选定的裁剪图像的单应点映射到整个图像,并将这些单应点馈送到solvePnP中以获得姿势估计.
我设法成功实现单应点,但我似乎无法让solvePnP因某些原因正常工作.我怀疑我的输入格式不正确,但我不确定.
如果你想自己运行代码,git克隆这个(为了运行它需要文件):( https://github.com/vanstorm9/SLAM-experiments.git)
并运行文件:/augmented-reality/sample-scripts/test.py
有人可以解决这个问题吗?
错误:
Traceback (most recent call last):
File "/augmented-reality/sample-scripts/test.py", line 315, in <module>
(ret, rvecs, tvecs) = cv2.solvePnP(objp, corners2, mtx, dist)
error: /opencv/modules/calib3d/src/solvepnp.cpp:61: error: (-215) npoints >= 0 && npoints == std::max(ipoints.checkVector(2, CV_32F), ipoints.checkVector(2, CV_64F)) in function solvePnP
Run Code Online (Sandbox Code Playgroud)
solvePnP的输入和大小
(42, 3) # objp
(143, 2, 1) # corners2
(3, 3) # mtx
(1, 5) # dist
# objp
[[ 0. 0. 0.]
[ 1. 0. 0.]
[ 2. 0. 0.]
[ 3. 0. …Run Code Online (Sandbox Code Playgroud) 如果PHP值为空,有谁知道如何让mysql查询忽略某个where条件.我正在尝试创建一个具有许多严格条件的高级搜索引擎来过滤搜索,但是如果PHP值为空,则希望SQL忽略某些原因.例如:
$condition_1 = ' ';
$condition_2 = 'Random';
mysql_query("SELECT something FROM table WHERE row_1='$condition_1' && row_2='$condition_2'")
Run Code Online (Sandbox Code Playgroud)
查询中会有15个原因,因此任何涉及对不同搜索组合进行多次查询的内容都是不可行的.
$ condition_1为空,只显示row_1中没有值的结果,但我只想让PHP值$ condition_1为空时查询忽略row_1条件.我该怎么做?
我从pyimagesearch.com获取源代码来制作移动文档扫描程序并尝试测试代码.边缘检测部分可以正常工作,但每当我到达试图找到图像轮廓的部分时,程序就会输出一个错误,说明有太多的值要解包,尽管编程工作在作者身边.
有什么问题,我该如何解决?
关于源代码的博客文章:http: //www.pyimagesearch.com/2014/09/01/build-kick-ass-mobile-document-scanner-just-5-minutes/?__vid=c35c22a06af30132982122000b2a88d7
有关该计划的Youtube视频:https: //www.youtube.com/watch?v = yRer1GC2298
Ubuntu的终端命令
python scan.py --image images/page.jpg
Run Code Online (Sandbox Code Playgroud)
结果:
STEP 1: Edge Detection
Traceback (most recent call last):
File "scan.py", line 40, in <module>
(cnts, _) = cv2.findContours(edged.copy(), cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)
ValueError: too many values to unpack
Run Code Online (Sandbox Code Playgroud)
码:
# USAGE
# python scan.py --image images/page.jpg
# import the necessary packages
from pyimagesearch.transform import four_point_transform
from pyimagesearch import imutils
from skimage.filter import threshold_adaptive
import numpy as np
import argparse
import cv2
# construct …Run Code Online (Sandbox Code Playgroud) python ×7
opencv ×5
image ×2
probability ×2
scikit-learn ×2
ajax ×1
button ×1
colors ×1
contour ×1
gstreamer ×1
homography ×1
javascript ×1
jquery ×1
mysql ×1
opencv3.0 ×1
php ×1
prediction ×1
projection ×1
rtp ×1
sql ×1
streaming ×1
string ×1
where-clause ×1