Python
文章平均质量分 84
python日常采坑总结
Hirezy
人生没有彩排,每一个细节都是现场直播。
是非审之于己,毁誉听之于人,得失安之于数,成败归之于零.
展开
-
Conda 使用教程大全来啦
Conda 是一款功能强大的软件包管理器和环境管理器,您可以在 Windows 的 Anaconda 提示符或 macOS 或 Linux 的终端窗口中使用命令行命令。原创 2023-12-13 10:33:13 · 2420 阅读 · 1 评论 -
pip的基本命令和使用
pip是Python官方的包管理器,可以方便地安装、升级和卸载Python包。原创 2023-12-07 11:16:25 · 187 阅读 · 1 评论 -
TensorFlow DLL文件缺失解决方案
前言:最近在用TensorFlow做车牌识别的项目,在训练模型时发现了如下问题,那就是xxx.dll not found.(本人是windwos电脑,可能Windows电脑问题比较多,如果cuda环境变量一项配置有问题就可能导致程序无法执行),今天就以cudnn64_7.dll 文件not found 为例,讲解如何解决这一类问题。问题描述和分析在用gpu训练模型时,为了验证gpu是否可用,执行了如下程序。import tensorflow as tfimport osos.environ["原创 2021-05-14 19:32:54 · 14520 阅读 · 7 评论 -
Python图像的二值化
什么是图像二值化在认识二值化前,我们先简单介绍一下几个概念:彩色图像彩色图像有blue,green,red三个通道,取值范围均为0-255灰度图灰度图:只有一个通道,取值范围在0-255,所以一共有256种颜色二值图像二值图像,只有两种颜色,既黑色和白色图像二值化图像的二值化也很简单,大概二步就可以完成,具体如下第一步:获取阈值获取阈值很简单,OpenCv的threshold函数进行全局阈值,也可通过OpenCv的adaptiveThreshold获取局部阈值原创 2021-03-15 15:22:20 · 39770 阅读 · 11 评论 -
Python常用图像处理
本文我来简单讲述了Python图像处理之图像的缩放,旋转,翻转,图像手绘等实现方法。具体如下:图像的几何变换,如缩放、旋转、翻转、图像手绘等,在图像处理中扮演着重要的角色,python中的Image类分别提供了这些操作的接口函数,下面进行逐一介绍。环境搭建在讲解这些前,我们先简单安装一下环境,主要是使用Python的PIL库,下载地址Python Imaging Library (PIL),这里只需要pip安装即可。pip安装pip install pillow好了,安装完毕,就是使用原创 2021-03-06 18:23:54 · 1941 阅读 · 0 评论 -
pip换源,解决pip下载超时,连接失败等问题
前言做python开发的时候,我们需要用到很多第三方提供的包作为支撑,由于这些包很多都是来自国外,导致经常可能下载失败,甚至连接超时等问题发生,这些都是非常可恼的,严重影响了我们codeing的正常水平。正对这一问题,后来就出现了换源的概念,就是把第三方包的下载地址放在国内镜像源。这样速度就有了质的提升。下面就看看国内常用换源网站,以及如何换源的。常见换源网站清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:http://mirrors.aliyun.c原创 2020-11-24 10:53:50 · 3622 阅读 · 0 评论 -
Pytorch搭建自己的模型
前言PyTorch、TensorFlow都是主流的深度学习框架,今天主要讲解一下如何快速使用pytorch搭建自己的模型。至于为什么选择讲解pytorch,这里我就简单说明一下自己的使用感受(相对TensorFlow来说),也就是pytorch对比TensorFlow有哪些区别。二者区别pytorch是一个动态的框架,而TensorFlow是一个静态的框何为静态的框架呢?我们知道,TensorFlow的特性是,首先我们需要先构建一个TensorFlow的计算图,构建好计算图之后,这样一个计算原创 2020-11-23 20:53:22 · 13883 阅读 · 4 评论 -
OpenCV系列(一)之图像平滑
目标使用各种低通滤镜模糊图像将定制的滤镜应用于图像(2D卷积)接下来,就简单介绍一下这俩种常用的滤镜技术。图像模糊(图像平滑)通过将图像与低通滤波器内核进行卷积来实现图像模糊。这对于消除噪音很有用。它实际上从图像中消除了高频部分(例如噪声,边缘)。因此,在此操作中边缘有些模糊。(有一些模糊技术也可以不模糊边缘)。OpenCV主要提供四种类型的模糊技术。平均这是通过将图像与归一化框滤镜进行卷积来完成的。它仅获取内核区域下所有像素的平均值,并替换中心元素。这是通过功能cv.blur()或cv原创 2020-10-16 18:35:22 · 5575 阅读 · 0 评论 -
走进OpenCV
介绍OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 [1] 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主原创 2020-07-25 18:13:40 · 11293 阅读 · 1 评论 -
用Python从视频中提取每一帧的图片
我们经常会看到某些视频的画面感觉貌美如画,就像出水的芙蓉一般,就情不自禁想截取下来,却又烦于截图的繁琐,现在我就教大家使用Python提取视频中每一帧的画面,让大家不错过每一个精彩的瞬间!准备工作既然是视屏,那么,我们就需要录一段视屏,或者有实时的视屏源,有了视屏源,下面就是要开始实时预览,同时实现实时的抠图。所需要的库只需要准备好cv2,numpy插件即可,可以自行百度 (自行安装)实战分析一切的准备工作准备完毕了,那么剩下的就是实战部分,认真分析,你会发现,整个过程可以分为三步完成,原创 2020-07-17 16:24:59 · 33862 阅读 · 20 评论 -
使用opencv-python读取多个(海康\大华)网络摄像头的视频流,解决实时读取延迟问题
在上一篇博客中,主要介绍了python之opencv按帧提取视频中的图片,但是,由于最近在做人脸识别的项目,用的是大华的监控摄像头,我发现大华的摄像头实时读取延迟问题特别严重,尤其是主码流,这个问题困扰了我好久,最终想到的方式就是自己实时推流,经过实践,终于解决了实时读取延迟问题。前言同样需要准备对应的python开发环境,具体参考上一篇python之opencv按帧提取视频中的图片,里面介绍了详细的需要的库文件。好了,既然是自己实现实时预览推流,那就要确定使用推流方式,我这里使用的是RTSP地址和格原创 2020-06-27 22:18:45 · 78250 阅读 · 44 评论 -
python之opencv按帧提取视频中的图片
大家应该都有这样的情况:在看到某些视频的画面时感觉美如画,想截取下来却又烦于截图的繁琐,现在我就教大家使用Python提取视频中每一帧的画面,让大家不错过每一个精彩的瞬间!所需的库既然是用是利用python版的opencv来实现视频的预览抠图,那么,需要准备需要的库的如下。cv2pip install opencv-pythonnumpypip install "numpy-1.11.3+mkl-cp27-cp27m-win_amd64.whl安装完所需的库文件后,我们就开始利原创 2020-06-20 10:44:37 · 23594 阅读 · 8 评论 -
主流语言实现冒泡排序算法
什么是冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。下面主要讲解几种常用开发语言的冒泡排序的实现逻辑:主流语言实原创 2020-06-19 21:10:42 · 1717 阅读 · 0 评论 -
欧几里得度量
前言说到L1范数和L2范数,搞python开发或者算法的小伙伴应该时常有接触,但是欧几里得范数可能有些人听着会有些陌生,乍一看以为是多么难的东西,其实欧几里得范数就是L2范数,只是叫法不同而已。今天,就来详细介绍一下欧几里得泛数。但是,为了方便哪些不了解L1范数的小伙伴,我还是打算用一句简单的话概括一下L1范数。L1范数是指向量中各个元素绝对值之和。好了,下面正式介绍L2范数,也就是欧几里得范数。定义在数学中,欧几里得距离或欧几里得度量是欧几里得空间中两点间“普通”(即直线)距离。使用这个距原创 2020-05-20 19:04:30 · 1582 阅读 · 0 评论 -
Python id(obj), ==, is 三者之间的区别
不多说,直接上代码,看看三者的区别吧。代码:# 例子a = [1, 2, 3]b=a;print(a)print(b)print(a is b)print(b is a)print(b==a)print(id(a)==id(b))print(a[:])b=a[:]print(b==a)print(a is b)查看一下输出结果:[1, 2, 3][1, 2, 3]TrueTrueTrueTrue[1, 2, 3]TrueFalse通过结果,比对一下三者之原创 2020-05-19 15:28:13 · 1375 阅读 · 0 评论