Files
Any2MIF/README.md
2025-03-07 15:32:58 +08:00

3.5 KiB
Raw Blame History

Any2MIF 文件转换器

Any2MIF是一个现代化的文件转换工具可以将任意文件转换为MIFMemory Initialization File格式并提供基础的图像处理功能。

功能特点

  • 文件转换将任意文件转换为MIF格式
  • 参数配置自定义WIDTH、DEPTH、基数设置和地址偏移量
  • 图像处理:支持灰度化、二值化、降噪处理和尺寸标准化
  • 批量处理:支持批量转换多个文件
  • 主题切换:支持浅色/深色主题

系统要求

  • Python 3.8+
  • PyQt6
  • Pillow
  • NumPy

安装

  1. 克隆或下载本仓库
  2. 安装依赖:
pip install -r requirements.txt

使用方法

运行主程序:

python main.py

打包为可执行文件

Any2MIF可以使用Nuitka打包成单文件.exe可执行程序无需安装Python环境即可运行。

使用build.py脚本打包

  1. 确保已安装所有依赖:

    pip install -r requirements.txt
    
  2. 运行build.py脚本

    python build.py
    

    这将自动安装Nuitka如果尚未安装并将项目打包成名为"Any2MIF.exe"的单文件可执行程序。

  3. 打包选项:

    • 指定输出文件名:python build.py --output MyConverter
    • 保留控制台窗口(用于调试):python build.py --console

手动使用Nuitka打包

如果你想手动控制打包过程可以直接使用Nuitka命令

pip install nuitka
python -m nuitka --standalone --onefile --windows-disable-console --include-package=PyQt6 --include-package=PIL --include-package=numpy --include-data-dir=resources=resources --output-filename=Any2MIF.exe main.py

打包后的可执行文件可以在任何Windows系统上运行无需安装Python或其他依赖。

基本操作流程

  1. 点击"添加文件"或"添加文件夹"按钮,或直接拖放文件到应用程序中
  2. 配置转换参数(数据宽度、深度、数据格式等)
  3. 如果是图像文件,可以使用图像处理工具进行预处理
  4. 点击"转换"按钮开始转换
  5. 选择输出目录
  6. 等待转换完成

参数说明

  • 数据宽度 (WIDTH)指定MIF文件中每个数据的位宽8位、16位或32位
  • 深度 (DEPTH)指定MIF文件中的数据数量可以自动计算或手动设置
  • 数据格式指定MIF文件中数据的表示方式十六进制、二进制或十进制
  • 地址偏移量指定MIF文件中地址的起始值
  • 地址格式指定MIF文件中地址的表示方式标准格式或紧凑格式
  • 每行数据数量指定MIF文件中每行显示的数据数量

图像处理

对于图像文件Any2MIF提供以下处理功能

  • 灰度化:将彩色图像转换为灰度图像,支持平均值法、加权平均法和最大值法
  • 二值化将灰度图像转换为黑白图像支持固定阈值、自适应阈值和Otsu阈值
  • 降噪处理:去除图像中的噪点,支持中值滤波、高斯滤波和双边滤波
  • 尺寸标准化:调整图像大小,可以保持或不保持纵横比

许可证

Copyright (c) 2025 Any2MIF Project

本项目采用GNU Affero通用公共许可证第3版AGPL-3.0)进行许可。

这意味着:

  • 您可以自由使用、修改和分发本软件
  • 如果您修改了本软件,必须以相同的许可证发布修改后的版本
  • 如果您通过网络提供本软件的服务,必须提供完整的源代码
  • 详细条款请参阅GNU AGPL-3.0许可证