草庐IT

cv2.imshow

全部标签

python - plt.show 和 cv2.imshow 的区别?

为什么使用plt.show&cv2.imshow()调用同一张图片时,输出的图片会有差异?这是我的代码:importcv2importnumpyasnpfrommatplotlibimportpyplotaspltsrc=cv2.imread('fruits1.jpg')#Sourceimageplt.subplot(211),plt.imshow(src),plt.title('image')plt.xticks([]),plt.yticks([])plt.show()cv2.imshow('image',src)cv2.waitKey(0)cv2.destroyWindow()这是

python - 理解 python xgboost cv

我想使用xgboostcv函数为我的训练数据集找到最佳参数。我对api感到困惑。如何找到最佳参数?这是否类似于sklearngrid_search交叉验证功能?我如何找到确定max_depth参数([2,4,6])的哪个选项是最佳的?fromsklearn.datasetsimportload_irisimportxgboostasxgbiris=load_iris()DTrain=xgb.DMatrix(iris.data,iris.target)x_parameters={"max_depth":[2,4,6]}xgb.cv(x_parameters,DTrain)...Out[6

python - 导入 cv2 (opencv) 时为 "DLL load failed"

在[windowsserver2012R2x64,python3.764x]中pipinstallopencv-contrib-python安装没有任何错误。当我尝试导入它时importcv2告诉我这个错误:Traceback(mostrecentcalllast):File"test.py",line1,inimportcv2File"C:\ProgramFiles\Python37\lib\site-packages\cv2\__init__.py",line3,infrom.cv2import*ImportError:DLLloadfailed:Thespecifiedmodul

python - 在 python (cv2) 中使用 OpenCV 增加彩色图像对比度的最快方法是什么?

我正在使用OpenCV处理一些图像,我需要执行的首要步骤之一是增加彩色图像的图像对比度。迄今为止我发现的最快方法使用此代码(其中np是numpy导入)按照originalC-basedcv1docs中的建议进行乘法和加法:if(self.array_alphaisNone):self.array_alpha=np.array([1.25])self.array_beta=np.array([-100.0])#addabetavaluetoeverypixelcv2.add(new_img,self.array_beta,new_img)#multiplyeverypixelvalueb

python - RuntimeError 在 openCV 中使用 cv.SaveImage

我想将jpg文件转换为png,但是当我运行这段代码时:fromopencvimport_cvfromopencv.highguiimportcvSaveImage,cvLoadImagecvSaveImage("bet.jpg",cvLoadImage("bet.jpg"))if__name__=='__main__':pass它给出了这个我不明白的错误:Traceback(mostrecentcalllast):File"convert.py",line6,incvSaveImage("bet.jpg",cvLoadImage("bet.jpg"))File"/usr/lib/pym

python - 在 matplotlib 图形窗口(带 imshow)中,如何删除、隐藏或重新定义鼠标的显示位置?

这个问题在这里已经有了答案:InteractivepixelinformationofanimageinPython?(7个答案)关闭7年前。我将ipython与matplotlib结合使用,并以这种方式显示图像:(启动:ipython--pylab)figure()im=zeros([256,256])#justastand-informyrealimagesimshow(im)现在,当我将光标移到图像上时,我会看到鼠标的位置显示在图形窗口的左下角。显示的数字是x=列号,y=行号。这是非常面向情节而不是面向图像的。我可以修改显示的数字吗?我的第一选择是显示x=行号*标量,y=列号*标

python - imshow 不需要从 BGR 转换为 RGB

正如我所相信的那样,OpenCV以BGRcolorspace顺序读取图像,我们通常必须像这样将其转换回RGB:img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)但是当我尝试简单地读取图像并显示它时,着色看起来不错(无需将BGR转换为RGB):img_bgr=cv2.imread(image_path)cv2.imshow('BGRImage',img_bgr)img_rgb=cv2.cvtColor(img_bgr,cv2.COLOR_BGR2RGB)cv2.imshow('RGBImage',img_rgb)cv2.waitkey(0)imshow()是自

python - matplotlib.pyplot.imshow : removing white space within plots when using attributes "sharex" and "sharey"

我遇到了一个类似于here上发布的问题.不同之处在于,当我绘制两个通过sharex和sharey属性共享轴的子图时,我在绘图区域内得到不需要的空白。即使在设置autoscale(False)之后,空白仍然存在。例如,使用与上述帖子的答案中类似的代码:importmatplotlib.pyplotaspltimportnumpyasnpfig=plt.figure()ax=fig.add_subplot(2,1,1)ax.imshow(np.random.random((10,10)))ax.autoscale(False)ax2=fig.add_subplot(2,1,2,sharex

python - matplotlib 绘图和 imshow

matplotlib的plot和imshow的行为让我感到困惑。importmatplotlibasmplimportmatplotlib.pyplotasplt如果我在调用plt.imshow(i)之前调用plt.show(),则会产生错误。如果我在调用plt.show()之前调用plt.imshow(i),那么一切都会完美无缺。但是,如果我关闭第一个打开的图形,然后调用plt.imshow(i),将显示一个新图形,而无需调用plt.show()。谁能解释一下? 最佳答案 IfIcallplt.show()priortocalli

详解OpenCV的视频背景/前景分割(背景建模/前景提取)类cv::BackgroundSubtractorMOG2,并利用它实现对道路监控视频前景/背景的提取

cv::BackgroundSubtractorMOG2和cv::bgsegm::BackgroundSubtractorMOG一样,都是基于高斯混合模型的背景与前景分割算法。cv::BackgroundSubtractorMOG2是对cv::bgsegm::BackgroundSubtractorMOG的改进,经过改进,它实现了自适应高斯混合模型参数的更新,增强了复杂场景背景检测的性能。具体的算法原理可以参见下面两篇论文:第一篇:ZoranZivkovicandFerdinandvanderHeijden.Efficientadaptivedensityestimationperimagep