python
概率问题
毕业于RUC,软件工程小硕一枚~
爱好:深度学习、CV、数据挖掘、NLP、Java、C++、大数据开发
展开
-
Jupyter Notebook出现kernel error
Jupyter Notebook出现kernel error输入:python -m ipykernel install --user重新安装内核即可原创 2022-02-24 18:33:09 · 416 阅读 · 2 评论 -
pipenv Not a valid python path
第一步:打开C:\ Windows \ regedit.exe第二步:删除 HKLM \软件\ Python \ PythonCore*HKCU \ SOFTWARE \ Python \ PythonCore *问题即可解决原创 2021-05-27 13:11:19 · 306 阅读 · 1 评论 -
PIL Image转换为bytes
话不多说,代码如下:from io import BytesIOfrom PIL import ImagebytesIO = BytesIO()image_path = "" #路径file_content = Image.open(image_path)file_content.save(bytesIO, format='PNG')print(bytesIO.getvalue())原创 2021-02-07 13:49:04 · 1590 阅读 · 0 评论 -
安装cocoapi 报错 LINK : fatal error LNK1158: 无法运行“rc.exe”
问题描述:python setup.py build_ext install 出现“fatal error LNK1158: 无法运行“rc.exe””的错误解决方案:1、复制C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64下的rc.exe和rcdll.dll文件2、将第一部复制的文件拷贝到C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin下问题得到解决!...原创 2021-01-19 13:40:37 · 198 阅读 · 0 评论 -
leetcode 31 下一个排列答案和解析
题目描述:实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1一. 直观答案解答:最简单直观的思路是暴力破解,即先将nums升序排序,然后进行排列组合,再找到nums提供的组合,下一个排列即为答案,但效率太低。时间复杂原创 2020-11-02 16:22:07 · 230 阅读 · 2 评论 -
解决Pyinstaller打包文件太大的问题
废话不多说**原因:**在Anaconda下打包的很多不必要的模块进去,导致最终的exe文件过于庞大。**解决办法:**要用纯净的python来打包即可避免加入不必要的包,那么如何快速地建立纯净的python环境呢?当然不用重装python,只需要通过pipenv建立虚拟环境即可。在虚拟环境下打包,最终的exe文件会非常小(几M)。#第一步,建立虚拟环境pipenv install#第二步,进入虚拟环境pipenv shell#第三步,安装自己最终打包的py文件下需要的模块即可pip in原创 2020-09-30 16:41:21 · 2434 阅读 · 0 评论 -
一个简单的洗牌算法实现 Python
为一副去掉大小王的52张扑克设计洗牌算法,思想如下:1. cut牌:随机选取一个cut点,位于cut点下方的牌保持顺序不变全部移到cut点上方牌的上部,此时cut点位于牌的末尾。2. 叠插牌: 将扑克牌分为相等的两堆,选取其中一堆,保持顺序依次插入到另一堆的两牌之间import random#返回一个拥有52张扑克的列表def newPack(): return list(range(1,53))#cut牌,本质上就是列表左移def MirrorP(p,start,end):原创 2020-06-20 10:15:18 · 1214 阅读 · 0 评论 -
python训练集测试集划分
训练集测试集划分代码的作用是将某个txt文件的所有行,根据随机index的方式划分为train,val,test三部分import numpy as nptxtfile = open("./all.txt",'r')train_num = 0.7val_num = 0.1test_num = 0.2all_length = len(txtfile.readlines())txtfile.seek(0)train_length = int(all_length * train_num原创 2020-05-10 12:01:53 · 1354 阅读 · 0 评论 -
python统计RGB图片某像素的个数
1.对于RGB三通道图片,直接用两层for循环的话,效率比较低2.可以先将RGB图片转为灰度图片,再利用numpy.where的广播机制统计像素个数。这里有一个前提是提前知道与灰度图片的像素值相对应RGB颜色。代码如下:from PIL import Imageimport numpy as npimport cv2img_L = np.array(Image.open('test....原创 2020-04-24 10:17:36 · 10907 阅读 · 11 评论 -
求两条直线的交点和抛物线的极值点 Python
1. 求两条直线的交点,联立方程即可,公式如下:计算两条直线交点代码:#计算两条直线的交点#y = a1*x + b1#y = a2*x + b2#如果没有交点 抛出异常并返回Nonedef cal_intersection(a1,b1,a2,b2): try: x = (b2-b1)/(a1-a2) y = a1*(b2-b1)/(a1-a2...原创 2020-04-20 13:32:39 · 2274 阅读 · 0 评论 -
AttributeError: 'DataParallel' object has no attribute 'copy' 解决方案
当我们用DataParallel训练了一个模型之后,又希望在cpu上run在一下模型,这个时候我们会首先建立模型图model = Mymodel(agrs)之后我们可能会run如下语句:model.load_state_dict(torch.load(model_path),,map_location=lambda storage, loc: storage)这个时候就会报错Attri...原创 2020-04-16 11:27:06 · 7038 阅读 · 0 评论 -
解决numpy输出array的省略号问题
在开头加上np.set_printoptions(threshold = np.inf)即可解决问题原创 2020-04-06 11:28:45 · 989 阅读 · 0 评论 -
解决 pytorch visdom:Downloading scripts, this may take a little while和蓝屏空白问题
一. 解决Downloading scripts, this may take a little while1.进入anaconda目录下cd ./anaconda3/lib/python3.7/site-packages/visdom2.找到该目录下的server.py文件vim server.py跳转到文件最下面,找到download_scripts_and_run()函数注释掉...原创 2020-03-22 21:58:31 · 1802 阅读 · 7 评论 -
conda 换源 清华源
conda 换源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/conda config --set sh...原创 2019-12-23 16:29:28 · 851 阅读 · 0 评论 -
python PIL Image BGRA 转为 RGBA
python PIL Image BGRA 转为 RGBAb,g,r,a = Image.open("box.png").split()box_png = Image.merge("RGBA", (r,g,b,a))两行即可原创 2019-11-19 00:32:35 · 1830 阅读 · 0 评论 -
python查看pytorch版本
import torchprint(torch.__version__)原创 2019-06-24 15:49:30 · 17225 阅读 · 0 评论 -
python打包exe的方法包Pyinstaller
一、 简介PyInstaller可以用来打包python应用程序,打包完的程序就可以在没有安装Python解释器的机器上运行了。PyInstaller支持Python 2.7和Python 3。可以在Windows、Mac OS X和Linux上使用,但是并不是跨平台的,而是说你要是希望打包成.exe文件,需要在Windows系统上运行PyInstaller进行打包工作;打包成mac app,需...原创 2019-07-03 13:38:13 · 1448 阅读 · 0 评论 -
不等概率概率问题转换为等概率问题
给一个概率p代表生成0的概率,则1-p代表生成1的概率。这类似于一枚硬币投出去结果为正面和反面的概率是不同的。下段代码将不等概率转换为等概率,即转换后的硬币投正面和反面的概率是相同的。话不多说,上代码# 不等概率转等概率# 随机给一个概率p# p代表生成0的概率# 1-p 代表生成1的概率# function core 等概率的返回0或1def core(p): import...原创 2019-07-05 15:17:53 · 1450 阅读 · 0 评论 -
语义分割 调色板代码
语义分割调色板代码下面代码的主要作用:根据你的类别数量,生成相同数量的颜色。比如你有21个类别(voc是20个class和1个background),就可生成相应21个不同的颜色。def make_palette(num_classes): """ Maps classes to colors in the style of PASCAL VOC. Close val...原创 2019-10-08 16:58:41 · 2048 阅读 · 0 评论 -
python 实现图像拼接
利用python实现两个文件夹对应顺序的图片水平拼合,注意拼合的图片高度和channel要一致,宽度可以不一样代码如下:import osimport cv2import numpy as npimg_path1 = "" #图片文件夹1img_path2 = "" #图片文件夹2target_path = "" #拼合后保存图片的目录for img1,img2 in ...原创 2019-06-22 15:34:57 · 3603 阅读 · 0 评论