- 博客(19)
- 收藏
- 关注
原创 【无标题】
for(uint32_ti=0;i<blob_size;i++){dst[i]=src[i*mix_primes%blob_size]; }/*设混淆的质数为prime假设索引i,j(i<j<blob_size<prime)对应对一同索引k,则可推到出i*prime=blob_size*x+kj*prime=blob_size*y...
2022-03-16 15:08:55
297
原创 C++的基类指针指向派生类对象
1、基类指针指向派生类对象 同名同参函数,基类虚函数、派生类实函数 只要调用该名字的函数,都是调用派生类函数 同名同参函数,基类实函数,派生类虚函数 只要调用该名字的函数,都是调用基类函数 同名同参函数,基类虚函数,派生类虚函数 只要调用该名字的函数,都是调用派生类对象 同名同参函数,基类实函数,派生类实函数 只要调用该名字的函数,都是调用基类函数 得出结论:基类指针p...
2022-03-09 09:24:43
2936
原创 python只使用位操作符和加号实现乘法、除法操作
def mul_cell(mult1, mult2, mult_acci): if(mult2 & 0x01): return [mult1 << 1, mult2 >> 1, mult_acci + mult1] else: return [mult1 << 1, mult2 >> 1, mult_acci]def mult_man(mult1, mult2): if mult2 >.
2022-02-15 15:39:44
568
原创 C语言遍历一个文件夹下所有的bmp图像
#include <sys/stat.h>#include <dirent.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#include <errno.h>#include <sys/types.h>int main(void){ DIR *dirp; struct dirent *direntp; .
2021-11-29 10:10:04
1385
2
原创 宏嵌套解析
宏嵌套的规则: 就像函数的参数一样,先展开参数,再分析函数,即由内向外展开,但是当宏中有#运算符时,参数不再被展开,当宏中有##运算符时,则先展开宏,再展开里面的参数,举例:#include <stdio.h>#define f(a,b) a##b#define e(a,b) f(a,b)#define g(a) #a#define h(a) g(a) int main(){ printf("%s/n",h(f(...
2021-11-18 09:13:32
1062
原创 printf打印变化的数值
uint8_t *regs_buf = NULL;regs_buf = kzalloc(len * 6, GFP_KERNEL);if(!regs_buf) return MEMERROR;for(int i = 0; i < len; i++){ memcpy(®s_buf[i * 6],"%02x ",6);}sprintf(regs_buf, regs_buf, tx_buffer[0], tx.
2021-09-08 15:28:33
272
原创 计算一串字符串的hash值
unsigned long long Hash(char* s, int l, int r) { unsigned long long value = 0; for (int i = l; i < r; i++) { value = value * 2333ull; value += s[i] - 'a' + 1; } return value;}
2021-08-20 14:56:53
868
原创 gcc使用静态库和动态库
使用静态库第一种方法:gcc + 源文件 + -L 静态库路径 + -l静态库名 + -I头文件目录 + -o 可执行文件名gcc main.c -L lib -l MyTest -I include -o app./app第二种方法:gcc + 源文件 + -I头文件 + libxxx.a + -o 可执行文件名gcc main.c -I include lib/libMyTest.a -o app使用动态库第一种方法:gcc + 源文件 + -L 动态库路径 + -l动态库名
2021-08-06 17:00:06
2408
原创 C语言的二维数组转换为双指针
int** two_dimension_to_two_ptr(void * arr, const int row, int col){ int** return_array = (int**)malloc(sizeof(int*) * row); for (int index = 0; index < row; index++) { return_array[index] = (int*)arr + index * col; } return ret.
2021-06-24 16:10:12
477
1
原创 批量复制某一个文件夹下某种文件
import osimport shutildef file_name(file_dir): for root, dirs, files in os.walk(file_dir): for j in files: if j.endswith('.pdf'): sourcefile = root +'/' +j...
2020-01-31 16:12:26
528
原创 视频-音频-文字
视频-音频第一步,安装ffmpy3库。pip install ffmpy3第二步,下载FFmpeg。去官网下载FFmpeg,根据自身电脑版本下载相应安装包。http://ffmpeg.org/download.html解压ffmpeg文件,将ffmpeg文件中的可执行文件ffmpeg.exe复制到当前项目文件目录下。第三步,运行以下代码生成wav文件。from ...
2020-01-01 20:51:50
351
原创 批量处理图片成手画模式
from PIL import Imageimport numpy as npimport osimport cv2 as cvdef mulhanpicture(path): filelist = os.listdir(path) for item in filelist: if item.endswith('.png') or item.endsw...
2019-12-22 11:27:29
169
原创 pyinstaller打包程序带图片终极教程
上次文章分享了一个比较傻笨的打包程序带图片,今天分享一个比较好的方法。第一步,将图片转换成py文件,程序如图。import base64def pic2py(picture_name): """ 将图像文件转换为py文件 :param picture_name: :return: """ open_pic = open("%s" % ...
2019-12-22 11:00:35
4975
1
原创 超音速气液混合
利用拉瓦尔喷管实现,是我的硕士毕业设计,已经编写好了一个界面,并且已经pyinstaller。很开心,如图:没看错,右下角是退出按钮,该软件可以设定气体、液体入口参数范围,也可以设置气体、液体入口值。第一步,右上角输入初始值,喷嘴参数为固定,但气体、液体初始为一范围,注意看单位,点击右上角计算,由于计算次数过多,所以最下面有进度条,如图:完成如图:可以点击右侧的11个按钮,...
2019-12-21 12:04:52
477
2
原创 python不同库之间图片格式的转换
之前在用pyqt做一个界面的时候,需要把程序打包成exe文件。使用pyinstaller打包后发现程序界面上的图片不见了,查阅很多资料,也没有得到解决,在此提出一种比较傻缺的做法,将图片像素赋值给一个矩阵数组,然后将矩阵数组转换为pyqt可处理的Qpixmap文件,就可以进行界面图片加载,并且可用。import cv2 as cvimport numpy as npfrom PIL im...
2019-12-21 11:47:38
291
原创 python去除水印
python去除水印最重要的是把水印识别出来,所以如果有一个水印蒙版图片最好,如果没有,则要求水印颜色和底色不一样。本篇文章只对水印颜色和底色不一样的水印去除。第一步,识别出来水印颜色,可以采用python相应鼠标点击事件,得出鼠标点击点图片像素:import cv2import numpy as npimg = cv2.imread('re.png')a =[]b = []...
2019-12-17 09:36:51
4300
原创 滤波
滤波主要分为两种,时域和频域滤波。时域滤波又可分为平均值、中值滤波、卡尔曼滤波。频域滤波又可分为低通、高通、带通、带阻滤波。本文介绍使用python实现一维数据低通滤波:import numpy as npimport matplotlib.pyplot as pltx = np.arange(0,10*np.pi,0.01)y = np.sin(x)plt.plot(x,y)p...
2019-12-04 18:35:31
1904
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人