随笔分类 -  Python

摘要:概述 课题组最近的项目需要用到华为的昇腾计算卡,和CUDA汗牛充栋的教程和文档相比,作为一款比较新的计算卡产品,昇腾在网上基本没什么教程,可以参考的只有官方文档、官方代码仓库和官方论坛。因此我在使用的过程中,也经过了很多探索,踩了不少坑,所以在这里记录一下我遇到的一些问题和解决方案。 特别强调一下, 阅读全文
posted @ 2024-10-02 11:19 YuanZiming 阅读(5451) 评论(4) 推荐(1)
摘要:概述 最近在实现一个通过PyTorch Extension扩展PyTorch算子的C++算法,需要分析代码的运行瓶颈进行针对性优化。Intel VTune就是一个能从汇编级和源码级分析CPU运行瓶颈的工具。由于不明原因我没在服务器上跑通命令行版的VTune,所以把程序搬到Windows下分析了,因此 阅读全文
posted @ 2024-06-30 12:54 YuanZiming 阅读(113) 评论(0) 推荐(0)
摘要:背景 在探索新的深度学习算法的时候,我们可能会遇到PyTorch提供的算子不能满足需求的情况,这时候就需要自定义PyTorch算子,将我们的算法集成到PyTorch的工作流中。同时,为了提高运算效率,算子往往都需要使用CUDA实现。所幸,PyTorch及很多其他Python库都提供了简化这一过程的方 阅读全文
posted @ 2023-09-03 15:50 YuanZiming 阅读(3940) 评论(0) 推荐(0)
摘要:背景 学校有一个网课系统,该系统的客户端是使用Silver light(一个.NET相关的技术框架,类似Flash)实现的,不支持跨平台。我对它的代码进行了分析,发现它会从服务器中接收H264格式的视频裸流和AAC格式的音频裸流,这两个裸流都不能用普通的播放器播放,所以我写了一个客户端将这两种裸流重 阅读全文
posted @ 2023-03-30 16:51 YuanZiming 阅读(694) 评论(0) 推荐(0)
摘要:背景 由于网络原因,在下载视频之前我们往往会希望能够先生成一些视频的缩略图,大致浏览视频内容,再确定是否应花时间下载。如何能够快速得到视频多个帧的缩略图的同时尽量少的下载视频的内容,是一个值得研究的问题。 思路 众所周知,不考虑音频、字幕的话,视频是由多个图像帧拼接而成的,因此我们的目标也就是尽量只 阅读全文
posted @ 2020-09-13 16:31 YuanZiming 阅读(1799) 评论(0) 推荐(1)
摘要:背景 最近在QQ群里看见别人发一张图,缩略图看着是一个样子,但打开大图以后却发现是另一张图,仔细观察这两张图发现缩略图是白色背景,大图是黑色背景,结合缩略图所在的对话框是白色的,打开大图的UI是黑色的,很容易猜到应该是依靠透明度实现的功能,因此研究了一下怎么用代码通过将两张图片混合来构造出满足要求的 阅读全文
posted @ 2020-08-17 17:34 YuanZiming 阅读(1327) 评论(0) 推荐(0)
摘要:背景 字符图片,即纯使用字符构造出一幅图片。关于这个,网上的教程和程序已经非常多了,都是使用不同复杂程度的字符模拟图片的灰度(比如字符'@'就比字符','复杂,但是我要做的是像这样的:(原图是星之卡比) (() /((/ -()/ (()-- --(//- --\/-- -/()-- -)//-- 阅读全文
posted @ 2020-08-17 16:25 YuanZiming 阅读(669) 评论(0) 推荐(0)
摘要:基础 from sympy import * 数学格式输出: init_printing() 添加变量: x, y, z, a, b, c = symbols('x y z a b c') 声明分数: Rational(1, 3) \(\displaystyle \frac{1}{3}\) 化简式子 阅读全文
posted @ 2020-06-09 10:17 YuanZiming 阅读(3882) 评论(0) 推荐(1)
摘要:背景: 时值疫情,作业需要在网上提交。最近老师改变了交作业方式,之前是提交完整的作业图片即可,现在需要将完整的作业图片切分成一题一题的提交,如果手动切分较麻烦,故本人写了个python脚本实现自动切分。 程序: import cv2 import numpy as np img = cv2.imre 阅读全文
posted @ 2020-06-09 10:12 YuanZiming 阅读(637) 评论(0) 推荐(0)
摘要:背景 笔者什么乐器也不会,乐理知识也只有中小学音乐课学的一点点。不过借助Python,调用编曲家常用的MIDI程序库,也能弹奏出一些简单的音乐,以下是笔者的一些心得。 准备 安装mingus 首先是安装Python库,我选择的是mingus,它的优点是教程写的很详细,而且和实际的乐理,像调性、节拍这 阅读全文
posted @ 2020-06-09 10:03 YuanZiming 阅读(6066) 评论(3) 推荐(1)
摘要:获得矢量图可以用jupyter导出为markdown格式然后下载导出的压缩包,里面的svg格式文件就是矢量图,可以直接拖进Word。 In [1]: import numpy as np from scipy import stats import matplotlib.pyplot as plt 阅读全文
posted @ 2019-12-07 17:42 YuanZiming 阅读(424) 评论(0) 推荐(0)
摘要:背景 最近从不同网站下载了非常多的动漫壁纸,其中有一些内容相同,但是大小、背景颜色、色调、主人公的位置不同(例子如下)。正因为如此,基础的均方误差、直方图检测等方法很难识别出这些相似的图片。 思路 OpenCV中有很多用来对特征点进行检测和计算的函数,这些函数能够利用像素点及其周围的灰度检测其是否是 阅读全文
posted @ 2019-08-10 21:49 YuanZiming 阅读(5746) 评论(0) 推荐(1)
摘要:例1 例2 阅读全文
posted @ 2019-03-05 17:22 YuanZiming 阅读(620) 评论(0) 推荐(0)
摘要:0.背景 本弱初学PyQt5,写了一个GUI小程序,但在用PyInstaller打包时出现了不少问题,现将几个比较大的问题记录如下,希望以后能记住。 1. 资源打包 首先是资源打包的问题,我写的程序引用了一张图片,那么在没经过特殊处理的情况下如果想让程序正常运行,就必须把图片放在和程序同一个目录下, 阅读全文
posted @ 2018-12-31 21:26 YuanZiming 阅读(396) 评论(0) 推荐(0)
摘要:背景: 学校的网站可以根据学号查学生姓名和成绩(三年后的补充:借助sql注入漏洞跳过密码,但是该网站现在已经被弃用了),所以我希望通过Python的爬虫得到年级所有同学的学号与姓名对应表。 实现: 首先需要算出所有学生的学号以方便查询。接下来要把学号和考试场次包装成待会要填入的信息,这可以用urll 阅读全文
posted @ 2016-10-16 15:42 YuanZiming 阅读(1353) 评论(0) 推荐(0)
摘要:bzoj1754[Usaco2005 qua]Bull Math 题意: 求两个正整数的积,每个数≤40位。 题解: 为什么C++不能支持高精度呢…… 代码: 20160831 阅读全文
posted @ 2016-09-03 22:28 YuanZiming 阅读(147) 评论(0) 推荐(0)
摘要:bzoj3767A+B Problem加强版 题意: 求两个数的和,每个数绝对值≤10^(10^7)。 题解: 又用Python水过了…… 代码: 20160828 阅读全文
posted @ 2016-09-03 21:23 YuanZiming 阅读(254) 评论(0) 推荐(0)
摘要:bzoj1002[FJOI2007]轮状病毒 题意: N轮状病毒的产生规律是在一个N轮状基中删去若干条边,使得各原子之间有唯一的信息通道,例如共有16个不同的3轮状病毒,如下图所示 现给定n,计算有多少个不同的n轮状病毒。N<=100 题解: 公式:f[i]=f[i-1]*3-f[i-2]+2,i≥ 阅读全文
posted @ 2016-08-16 21:56 YuanZiming 阅读(167) 评论(0) 推荐(0)
摘要:bzoj4563[Haoi2016]放棋子 题意: 给你一个N*N的矩阵,每行有一个障碍,数据保证任意两个障碍不在同一行,任意两个障碍不在同一列。要求你放N枚棋子(障碍的位置不能放棋子),也满足每行只有一枚棋子,每列只有一枚棋子的限制,求有多少种方案。N≤200。 题解: 发现在障碍在什么位置和答案 阅读全文
posted @ 2016-08-16 21:50 YuanZiming 阅读(182) 评论(0) 推荐(0)