自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 Python|GIF 解析与构建(5):手搓截屏和帧率控制

本文通过ctypes实现了 Windows 下的自定义截屏,并基于时间管理实现了帧率控制,下一个就是关于tk的录制软件制作。以下是完整代码:# 获取屏幕数据# 定义常量# 缩放比例zoom = 1try:finally:# 屏幕截取# 获取桌面窗口句柄# 获取桌面窗口的设备上下文return 0# 创建一个与屏幕兼容的内存设备上下文# 创建一个位图# 将位图选入内存设备上下文# 定义SRCCOPY常量# 捕获屏幕"""

2025-06-06 17:07:12 764

原创 Python |GIF 解析与构建(4):快速量化压缩256色算法

本文介绍了使用Python实现GIF图像的256色快速量化压缩算法。该算法通过RGB分量位宽截断(332/333/444模型)实现颜色量化,动态选择最优压缩模型,在保证图像质量的前提下实现高效压缩。核心流程包括色彩空间压缩、哈希映射构建和颜色表生成,支持PSNR/SSIM质量评估。测试结果显示,该算法可实现30%-70%的压缩率,PSNR值在26-35dB之间。文章还提出了并行处理、误差扩散算法等优化方向,适用于GIF动画、图标等对色彩数敏感的场景。

2025-05-28 17:44:10 967

原创 Python |GIF 解析与构建(3):简单哈希压缩256色算法

该简单哈希算法为 256 色 GIF 压缩提供了一种轻量级解决方案,平衡了压缩效率与实现复杂度。动态颜色量化:结合 K-means 等聚类算法,自适应选择最优颜色子集。哈希函数优化:引入更复杂的哈希算法(如感知哈希),提升相似颜色区分度。分块处理:对图像分区域应用不同压缩策略,保留高细节区域的色彩精度。代码如下:import os"""此算法压缩256色在gif使用的算法中属于中游尺寸: 1600x900。

2025-05-28 11:56:11 1070

原创 Python |GIF 解析与构建(2):状态机解析

GIF 文件由一系列区块(Block)组成,每个区块包含特定类型的数据(如文件头、颜色表、图像数据、扩展指令等)。状态机的核心思想是:根据当前解析进度,将程序划分为多个状态(State),每个状态负责解析某一类区块或数据片段,并根据输入数据决定下一步跳转的状态。GIF 解析的主要状态包括开头(Header):验证 GIF 文件签名(GIF87a或GIF89a逻辑屏幕标识符(Logical Screen Descriptor):解析画布尺寸、颜色表标志等基础信息。

2025-05-23 15:56:37 602

原创 Python |GIF 解析与构建(1):初步解析

本文详细解析了GIF格式的文件结构及其解析方法。GIF是一种基于LZW压缩算法的位图图像格式,支持动画、索引色模式和无损压缩。文章首先介绍了GIF的核心特点,随后深入解析了GIF89a版本的文件结构,包括文件头、逻辑屏幕描述块、全局调色板、图像数据块、动画控制块和文件尾等部分。通过Python代码示例,展示了如何读取和解析GIF文件,并详细解释了每个数据块的作用和结构。此外,文章还介绍了LZW压缩算法的解码和压缩过程,帮助读者理解GIF文件的内部工作机制。

2025-05-22 12:05:29 913

原创 python实战使用tkinter和注册表实现系统小工具(10种主题配色)

foreground=colors["button_foreground"], # 文本颜色。tk.Label(config_window, text="地址:",tk.Label(config_window, text="密钥:",tk.Label(config_window, text="文本:",print(f"钉钉提醒发送失败: {e}")"Theme": "柔和pastel","Theme": "北欧冷色调","Theme": "未来科技感","Theme": "自然绿色",

2025-04-25 10:55:02 679

原创 python实现tkinter日期选择器(11种主题配色)

self.chinese_months = ['', '一月', '二月', '三月', '四月', '五月', '六月','七月', '八月', '九月', '十月', '十一月', '十二月']weekdays = ["一", "二", "三", "四", "五", "六", "日"]self.top.grab_set() # 设置为模态窗口。self.root.withdraw() # 隐藏主窗口。self.top.title("日期选择")text="确 定",# 限制窗口在屏幕内。

2025-04-03 11:42:18 543

原创 python字符级差异分析并生成 Word 报告 自然语言处理断句

print(f"替换:位置 {i1}-{i2} 从 '{''.join(text_a[i1:i2])}' 变为 '{''.join(text_b[j1:j2])}'")print(f"删除:位置 {i1}-{i2} 删除 '{''.join(text_a[i1:i2])}'")print(f"插入:位置 {i1} 插入 '{''.join(text_b[j1:j2])}'")new_doc.add_heading('断句后的字符级差异报告', level=1)# 替换部分,删除的用红色,新增的用绿色。

2025-03-19 08:48:20 1161

原创 python字符级差异分析并生成 Word 报告

print(f"替换:位置 {i1}-{i2} 从 '{''.join(text_a[i1:i2])}' 变为 '{''.join(text_b[j1:j2])}'")print(f"删除:位置 {i1}-{i2} 删除 '{''.join(text_a[i1:i2])}'")print(f"插入:位置 {i1} 插入 '{''.join(text_b[j1:j2])}'")doc.add_heading('字符级差异报告', level=1)# 替换部分,删除的用红色,新增的用绿色。

2025-03-18 15:00:55 674

原创 python 局域网网页传输文件

num = st.selectbox("读取子表", ("0", "1", "2", "3", "4", "5", "6", "7", "8"))", uploaded_file.type)chat = st.sidebar.selectbox("聊天室",("无","服务001","服务002"))drop_true = st.selectbox("是否删除文件", ("否", "是"))doc = st.sidebar.selectbox("服务器文件管理", ("无", "文件管理"))

2025-02-27 11:59:20 852

原创 GPT 本地运行输出界面简洁美观(命令行、界面、网页)

output_text = scrolledtext.ScrolledText(root, width=60, height=20, bg=bg_color, font=("黑体", 15),fg="#FFFFFF")send_button = tk.Button(input_frame, text="发送", command=send_message, bg="white"){"role": "user", "content": "你是?st.write(f"输入文本为:{prompt}")

2025-01-26 18:58:58 2433 2

原创 python windows 外部usb设备检测

delect_command = f"{adb_path} shell rm {folder_path}/{i}"#删除语句,如果不需要可以注释。folder_adb("/storage/emulated/0/Pictures/Screenshots")#手机截图地址。adb_path = "K:/adb/adb/adb.exe"#adb地址。# 可以根据usb的厂商ID和产品ID进行精确匹配。local_path = "K:/photo"#放入电脑的本机地址。# 获取相关设备的路径。

2025-01-23 18:32:28 886

原创 GPT 结束语设计 以nanogpt为例

基于成本和开发快速考虑,可以使用nanogpt用于训练和开发,然后再进一步的微调迭代,所需要的性能和效果基本可以满足部分要求,迭代速度较快,适合单人或小团队开发特定场景。以上的业务场景都是设计的时候为特定模型,即小大模型,通常不需要较大的参数,所以在设计时候如果考虑到轻量化和小型化,参数1M至100M之间的小大模型。通过在推理过程中检测新生成的编码是否和结束语一致,以上在设计的过程中通过字典分词,然后再分配的编码,是可以通过代码获取对应的结束语的编码。3、一些较小的业务场景,特定处理的业务。

2025-01-22 10:24:41 939

原创 python 双端口截图数据传输显示

self.root.wm_attributes('-transparentcolor', self.bg_color) # 透明。self.img = weakref.ref(self.current_tk_image) # 弱引用释放。self.root.wm_attributes("-topmost", True) # 置顶。self.root.config(bg=self.bg_color) # 背景色。# self.root.overrideredirect(True) # 无边框。

2025-01-21 14:25:06 860

原创 python双端监控屏幕传输显示

self.root.wm_attributes('-transparentcolor', self.bg_color) # 透明。self.canvas = tk.Canvas(self.root) # 预先创建 canvas。self.root.wm_attributes("-topmost", True) # 无边框。self.root.config(bg=self.bg_color) # 背景色。self.bg_color = '#F0F0F0' # 透明。# 更新时间标签的文本。

2025-01-16 09:55:31 883

原创 中等难度——python实现电子宠物和截图工具

tk.Button(popup, image=self.image3, text="关闭", command=close_popup).grid(row=0, column=3, padx=0,tk.Button(popup, image=self.image1, text="复制", command=copy_photo).grid(row=0, column=0, padx=0,list_emote = ["(^▽^)", "(⊙_⊙)", "(一_一)", "(一_一)!

2025-01-13 15:53:05 3509

原创 python调用window库全屏截图生成bmp位图学习

print(f"每行对应的字节:{pixel_data[y * bytes_per_row:(y+1) * bytes_per_row]}")print(f"文件类型标识: {file_header[0].decode('utf-8')}") # 应该是 'BM',解码字节串为字符串。print(f"像素坐标({x}, {y}) 的RGB值: ({red}, {green}, {blue})")print(f"颜色深度(每个像素的位数): {info_header[4]} 位")

2025-01-10 15:36:57 758

原创 中等难度——python 标准库和windows库调用实现截图工具

tk.Button(popup, image=self.image3, text="关闭", command=close_popup).grid(row=0, column=3, padx=0, pady=0)tk.Button(popup, image=self.image1, text="复制", command=copy_photo).grid(row=0, column=0, padx=0, pady=0)root.wm_attributes("-topmost", True) # 窗口置顶。

2024-12-31 16:38:44 590

原创 模拟混合专家模型——滑块匹配领域应用学习

对于图像识别多分类问题,可以训练识别几种分类作为一种专家,然后将几个专家协调起来,通过它们对图像的匹配度打分,或者是对图像多标签标记(颜色专家、形状专家)这样能实现小模型就能训练出特别好的效果。混合专家模型(Mixture of Experts,简称MoE)是一种高效的神经网络架构,它将多个专业化的子模型(即“专家”)与一个门控网络相结合,以处理复杂任务。而对于混合专家模型来说,许多人比较陌生,其实可以认为这是一种较为通用的方法,适用于许多领域,比如自然语言处理、图像识别、语音识别、推荐系统等领域。

2024-12-27 12:26:19 626

原创 python简单图像识别自动化工具

right_bottom = (self.max_loc[0] + self.template.shape[1], self.max_loc[1] + self.template.shape[0]) # 右下角。def click(self, val=0.85, x=0, y=0): # x,y为偏移量。def move(self, val=0.85, x=0, y=0): # x,y为偏移量。def on_click(x, y, button, pressed): # 监听鼠标。

2024-12-27 09:47:49 1181

原创 Tkinter实现动态桌面宠物(标准库实现截图)

status_text = "CPU:{0:.1f}%\n内存:{1:.1f}%\n磁盘C:{2:.1f}G\n{3}\n".format(cpu_status,memory_status,disk_status,string_status)button = tk.Button(top, text="截图", command=on_button_click,bg=bg_color,fg="#FFFFFF")list_emote = ["(^▽^)","(⊙_⊙)","(一_一)","(一_一)!

2024-12-26 10:51:52 889

原创 python标准库实现剪切板复制bmp位图对象

("bmiColors", RGBQUAD * 3)] # 只分配了3个RGBQUAD的空间。x_src, # 源矩形左上角的x坐标(通常是0)y_src, # 源矩形左上角的y坐标(通常是0)gdi32.BitBlt(hdc_src, # 目标设备上下文。x_dest, # 目标矩形左上角的x坐标。y_dest, # 目标矩形左上角的y坐标。hwnd = 0 # 可以传递 NULL(0)作为 hwnd。hwnd = 0 # 可以传递 NULL(0)作为 hwnd。

2024-12-04 11:33:39 900

原创 Tkinter实现gif动图桌面宠物(自带gif的base64编码)

status_text = "CPU:{0:.1f}%\n内存:{1:.1f}%\n磁盘C:{2:.1f}G\n{3}\n".format(cpu_status,memory_status,disk_status,string_status)list_emote = ["(^▽^)","(⊙_⊙)","(一_一)","(一_一)!","(╥_╥)"]top.wm_attributes("-topmost", True) # 窗口置顶。gif_path = "1.gif" # 替换为你的GIF文件路径。

2024-11-20 16:54:57 1495

原创 tkinter显示字幕(启动、更新、销毁)

label = tk.Label(top, text=string, font=("黑体", 30), fg="red", bg=bg_color, width=0, height=0)label.config(fg=hover_fg_color) # 改变字体颜色为悬停时的颜色。label.config(fg=default_fg_color) # 恢复字体颜色为默认颜色。top.wm_attributes("-topmost", True) # 窗口置顶。update("更新操作")

2024-10-22 08:37:28 827 1

原创 tkinter运用子线程显示淡入淡出透明界面显示文本、动画

label = tk.Label(top, text=string, font=("宋体", 30), fg="red", bg=bg_color, width=0, height=0)label = tk.Label(top, text=string, font=("宋体", 30), fg="red", bg=bg_color, width=0, height=0)label.config(fg=hover_fg_color) # 改变字体颜色为悬停时的颜色。

2024-10-18 14:47:08 492

原创 PDF匹配文本精准标记红框算法(单个、多个、单行、多行)

print("读取页码:", list_number[list_index[order] + skew: list_index[order] + skew + line])print("读取文本:", list_text[list_index[order] + skew: list_index[order] + skew + line])print("读取坐标:", list_box[list_index[order] + skew: list_index[order] + skew + line])

2024-10-11 18:31:21 938

原创 python 标准库调用实现全屏截图以png格式为例0.8秒 修改CRC识别错误

("bmiColors", RGBQUAD * 3)] # 只分配了3个RGBQUAD的空间。bmi.bmiHeader.biHeight = -height # 注意:负高度表示自底向上的位图。x_src, # 源矩形左上角的x坐标(通常是0)y_src, # 源矩形左上角的y坐标(通常是0)gdi32.BitBlt(hdc_src, # 目标设备上下文。x_dest, # 目标矩形左上角的x坐标。y_dest, # 目标矩形左上角的y坐标。height, # 高度。

2024-09-01 12:42:01 1130

原创 python 标准库处理png图片 简单案例

print("图片压缩方法为:", comdivssion_method)print("图片滤波器方法为:", filter_method)print("IHDR的内容字符长度为:", number)print("图片十六进制数据为:", data)print("图片颜色类型为:", color_type)print("图片扫描类型为:", scan_type)print("图像深度为:", bit_depth)print("数据块长度为:", number)print("图像高度为:", height)

2024-08-28 18:40:42 1101

原创 滑块匹配算法优化(信息模型)——超过95%准确率的滑块识别算法

除了理论论证外,我们还进行了四项实证众包研究,结果表明:我们的方法获得的排名答案的准确性远远高于多数投票(在一个问题中,多数答案得到74名受访者的支持,而正确答案只有3名受访者的支持)。通过使用不同阈值进行匹配,不同阈值能够提取的信息也是不同的,这种方法提供了强大的覆盖范围,能够提取大量信息,但是不适用于只有某一个小范围阈值才能精准对齐的。以下四种算子的效果不是太好,但是有推荐算法或者是神经网络的意识和想法,那么不同算子之间可以提供不同的信息,还有对应不同的匹配度有一定的信息可以被提取出来。

2024-07-26 09:24:59 461

原创 简单实现——截图移动滑块(整合精简代码)

【代码】简单实现——截图移动滑块(整合精简代码)

2024-07-13 02:02:18 343

原创 简单实现——多模态推荐和相似推荐(数据和代码)

我们从用户喜欢的物品之中,计算所有之外的物品的相似度,然后实现对用户所有的交互的物品对未知的物品的可能好感,这里是不包含用户行为的。

2024-07-03 13:49:04 1256 2

原创 python截图小工具(按键触发)

如果通过python文件转exe就可以双击使用,如果设计为循环就可以一直使用了。如果想要修改按键这里有测试用例,可以直观知道按键的使用,进行进一步修改。

2024-04-24 02:55:02 494 2

原创 基于nanogpt生成按键音乐项目部分代码开源(让gpt生成按键来弹钢琴)

开发时长设计到实现,大概周期是5天,其中不包括nanogpt的搭建的时间,数据格式的设计与按键调试比较耗费时间大概是3天左右。不足的地方:写文过程中才发现有更加适合的数据格式可以提高至少30%的性能,也在文章中写出来了,但是没有实现。其中也没有对声波进行处理,通过这个来识别转换,批量录入对应的音乐来实现生成。这个开发实际上是考虑去设计一个通用的gpt生成脚本框架的,所以考虑了扩展方面,其中比较好的就是“end”可以作为标识符的设计,分开按下和松开也为扩展提供了一定的空间。

2024-04-14 00:37:47 832 3

原创 python语言使用adb手机转移截图到电脑的简单编程

delect_command = f"{adb_path} shell rm {folder_path}/{i}"#删除语句,如果不需要可以注释。folder_adb("/storage/emulated/0/Pictures/Screenshots")#手机截图地址。adb_path = "K:/adb/adb/adb.exe"#adb地址。local_path = "K:/photo"#放入电脑的本机地址。# 执行 ADB 命令并获取输出。# 构建 ADB 命令。

2024-03-11 19:58:51 620

原创 基于nanogpt生成高质量的商品标题,爬虫爬取淘宝商品标题

nanogpt应该不陌生,很多时候,要达到理想的效果,要提高参数量,还要良好的数据集,但是优秀的数据集从哪来,怎么去寻找,而数据集和参数量不足都会影响到实际的使用。很多都是在30个或以下,那么为了生成之后上下文关联性比较强,block_size最好大一些,但是上下文太多也会影响性能。数据集最好数量多,效果也要比较好,而且训练时间也要短,提示词效果也要比较好。但是一直爬取,就会被弹窗阻碍,这时候关闭第一层的弹窗,里面的内容就会显示出来。我用的是nanogpt里的莎士比亚文集的,稍微修改了一些。

2024-03-11 13:58:31 741

原创 MiniCPM-2B的ModelScope模型本地部署与网站制作

MiniCPM 是面壁智能与清华大学自然语言处理实验室共同开源的系列端侧大模型,主体语言模型 MiniCPM-2B 仅有 24亿(2.4B)的非词嵌入参数量。所以就用python web 来搭载,这里使用的是streamlit,搭载web非常快。,一开始使用的是HuggingFace,但是HuggingFace的速度太慢。上面使用的是openbmb/MiniCPM-2B-dpo-bf16要进行修改。MiniCPM-2B-dpo-bf16只有5g可以轻松使用。下载对应的库和包,写者用的是。

2024-02-04 11:43:44 2809 14

原创 python 使用streamlit实现的京东爬虫分析系统

fieldnames = ['评论', '评论时间', '评分', '颜色', '规格', '购买时间', '用户', '型号', '产品名称', '评论间隔']data['评论'] = data['评论'].replace(r'&[a-zA-Z]+;num = st.selectbox("读取子表", ("0","1","2","3","4","5","6","7","8"))d = st.sidebar.selectbox("可视化处理", ("无", "聚合饼图","时间折线图","词云图"))

2023-07-26 18:13:39 977 1

原创 Numpy 的dot方法使用float比int快,记录笔记

另外,BLAS API只包含矩阵和矩阵,矩阵和向量以及向量和向量的乘法。因此,更高维的数组乘法并不能被加速。在data_train['value']赋予dataframe和赋值数字,会在jaccard()运算过程中有巨大的差异,前者cpu运行占比较高,内存占用变化明显80w条数据十多二十秒就搞定了,而后者会cpu运行占比低,内存拉高比较慢,速度明显慢。问题出在np.dot上,因为慢的赋值是整数,而且快的是非整数浮点类型,所以有可能是数据格式的问题。Numpy 中似乎有针对 浮点数的优化点运算。

2023-07-20 17:58:24 287 1

原创 基于的python的文件判断、处理,地址存表的模块

这里用的是streamlit框架的文件判断、处理,地址存表的模块

2023-07-17 11:45:41 142 1

原创 基于streamlit的可视化交互简单数据分析、数据预处理模板

我想出来可以对应整个数据预处理或者数据提取特征值的一个流程思路因为在整个处理过程中,有很多是必备或者说是使用率较高的,就类似于决策树,将重要的分支放在前面,这样整体效率较高。但streamlit框架是不断刷新的,所以在考虑整体来说,类似于决策树又不是决策树,要有一定的自由度,而不是全部运行,所以在运行时考虑用是否显示或者是否处理来限制,这样可以减少显示长度及其减少开销,所以整体流程会考虑这个图,也是通过思考得出的一种解,但并非最优。

2023-07-15 12:09:15 726 1

python 局域网网页传输文件

python 局域网网页传输文件

2025-02-27

简单实现-多模态推荐和相似推荐(数据和代码)

简单实现——多模态推荐和相似推荐 使用技术:神经网络,词向量,特征提取,推荐算法,多模态融合 在很多领域都用到了多模态推荐,但是很多时候构建多模态模型所需要的数据量是非常大的,所以在实现多模态推荐前,我们可以使用相似推荐来过渡。 这里我做的是将文本和图片模态做一个简单融合。 这里是我实现的数据和代码。

2024-07-03

基于python web streamlit开发的京东物品爬虫分析系统包括爬虫,数据预处理,文件管理,可视化,文本情感分析

包括爬虫,数据预处理,文件管理,可视化,文本情感分析. 爬取:评论地址,爬取次数,爬取什么评论,爬取时间,保存名称 文件管理:爬取过程有问题或者查看数据,删除文件,重命名,下载文件,上传文件 处理:简单处理,去除换行符去除表情符号,删除列 可视化 饼图 聚合方法 count sum mean 标题 保存 词云图 对词云图参数修改 折线图 时间数量 文本感情处理 评论情感分析 情感分析可视化 关键词提取 主题个数 迭代次数

2023-07-27

Python Web 中streamlit框架数据可视化实现

使用了pyecharts,streamlit,mysql连接,登录界面streamlit实现,这里streamlit框架是一直不断刷新,所以要用外部的控制刷新,或者跳转来解决。使用streamlit run 对应的py文件。

2023-06-27

python 的easyocr+cv裁剪处理(内含pil)jieba库处理,搜索引擎文字处理

进行大批量图片识别时候,很重要一点就是减少无用的识别,这样可以提高整体的运行效率,以免不必要的资源浪费,所以裁剪是一个很有效的方法,能大大提高大批量处理的效率,而且裁剪后保存的储存空间会缩小很多。这里我设计了通过selenium来和搜索引擎配合来处理文字数据,这里采用的是百度搜索引擎来处理,这里是大概代码模板,每个网页不一样,要进行细修。再进阶就是利用GPT来处理文字数据,但是文字识别上问题较多,所以GPT在使用过程中不没有那么好的性能和效率。对图片识别后要对识别的文字数据进行处理这里。

2023-06-13

python股票交易小游戏

有时间,价格,手续费,随机数,操作买卖,显示图像,上下波动,最高点,最低点,平均值,图像还能根据涨跌的变化而变化。采用了pycharm运行的股票交易游戏。

2023-06-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除