Python3处理手写笔记
导语
利用Python实现手写笔记的压缩与增强。
至于起因大概是:
这个内容很有趣。。。
——>
说了等于没说。T_T
相关文件
百度网盘下载链接: https://pan.baidu.com/s/1oagM2fbKUJXSiZ93S_Mszg
密码: 47ws
参考文献
链接:
https://mzucker.github.io/2016/09/20/noteshrink.html
作者:
Matt Zucker
主要思路
Step1:确定背景色
假定纸张颜色是扫描图像中最常出现的那一种颜色。
同时将8比特每通道消减至6比特每通道来增加背景色获取的可靠性。
Step2:分离前景色
将色彩从RGB空间映射到HSV空间来实现分离前景色的功能。
规则默认为:
(1)明亮度V比背景色大0.3以上;
(2)饱和度S比背景色大0.2以上。
满足其中一条即为前景色。
Step3:选择呈现色
相当于使用簇分析法解决一个色彩量化问题。
将原始24位每像素的图像转换成一个具有小数量代表色的图像。
主要使用K均值算法实现。
其他说明:
(1)默认情况下,程序会通过重新设置颜色的最大最小强度值为0到255,来增加最后调色板各色的艳丽度和对比度;
(2)程序默认情况下自动地根据输入文件名排序,关键字为数字。
开发工具
Python版本:3.5.4
相关模块:Scipy模块、numpy模块、PIL模块以及一些Python自带的模块。
环境搭建:安装Python并添加到环境变量,pip安装需要的相关模块即可。
使用演示
全部功能选项:
基本功能使用:
py -3.5 Note_Processor.py + 待处理的笔记图片名
例如下图:
结果展示
笔记1:
结果图:
笔记2:
结果图:
更多
若对结果不满意,请自行在命令行窗口设置相应的参数,即不要使用默认值;
例如:
Python3处理手写笔记相关推荐
- 李永乐线性代数2020年强化课手写笔记汇总
强化笔记整理如下,便于复习整理. [1]2020年李永乐线性代数强化笔记-行列式与矩阵 [2]2020年李永乐线性代数强化笔记-向量 [3]2020年李永乐线性代数强化笔记-线性方程组 [4]2020 ...
- 李永乐线性代数2020年基础课手写笔记汇总
汇总于此,方便查询,如有帮助,副产品罢了. [1]线性代数手写笔记-行列式与矩阵 [2]线性代数手写笔记-向量 [3]线性代数手写笔记-线性方程组 [4]线性代数手写笔记-特征值和特征向量 [5]线性 ...
- 李永乐线性代数手写笔记-二次型
李永乐线性代数基础知识,整理放在博客上面,方便自己复习查看. 概览请移步:李永乐线性代数2020年基础课手写笔记汇总 文章目录 一 二次型的概念和定理 二 化为标准形 三 正定二次型和正定矩阵 一 二 ...
- 李永乐线性代数手写笔记-特征值和特征向量
李永乐线性代数基础知识,整理放在博客上面,方便自己复习查看. 概览请移步:李永乐线性代数2020年基础课手写笔记汇总 文章目录 一 特征值和特征向量 二 相似矩阵 三 实对称矩阵 一 特征值和特征向量 ...
- 李永乐线性代数手写笔记-线性方程组
李永乐线性代数基础知识,整理放在博客上面,方便自己复习查看. 概览请移步:李永乐线性代数2020年基础课手写笔记汇总 文章目录 一 齐次方程组 二 非齐次方程组 三 公共解.同解 四 方程组的应用 一 ...
- 李永乐线性代数手写笔记-向量
李永乐线性代数基础知识,整理放在博客上面,方便自己复习查看. 概览请移步李永乐线性代数2020年基础课手写笔记汇总 文章目录 一 基本概念和运算 二 线性表示 三 相关和无关 四 向量组和矩阵的秩 一 ...
- 李永乐线性代数手写笔记-行列式与矩阵
李永乐线性代数基础知识,整理放在博客上面,方便自己复习查看. 概览请移步李永乐线性代数2020年基础课手写笔记汇总 文章目录 一 行列式 二 矩阵 一 行列式 二 矩阵
- SVM支持向量机-手写笔记(超详细:拉格朗日乘数法、KKT条件、对偶性质、最优化、合页损失、核函数...)
SVM支持向量机-手写笔记 作者:某丁 日期:2021.05.21 写完了,发现想要真正理解SVM还需要继续深入学习,以上所写只不过是冰山一角,我的管中窥豹而已. 参考 [1] 一文搞懂支持向量机(S ...
- 计算机网络手写笔记图片,一键收藏!清华学子这样记笔记!
原标题:一键收藏!清华学子这样记笔记! 还记得前段时间 朋友圈刷屏的清华学子笔记吗 整齐的排版. 清晰的思路无不令人赞叹 那么这些笔记是如何产生的呢? 相信看完下面这段视频 你会有更直观的了解 笔记教 ...
最新文章
- html5之通讯API
- MFC获取系统当前时间
- java_day21_反射和注解
- [Js代码风格]浅析模块模式
- css选择器中间的空格
- linux相关英文书记,Linux常用软件(英文介绍)
- 模块的封装性分析-读书笔记
- mysql 备份100G花费时间_利用xtrabackup 全量备份100G的数据恢复到单实例测试
- Java的序列化特性将要退出历史舞台了
- 基线是什么意思_CAD都玩不溜,还好意思说自己搞工程的?
- [绝对原创]一些你们想不到的简单方法,就可以让你手机飞快起来!!!
- hadoop单击模式环境搭建
- 如何用python做模型_python的模型如何使用?
- 分析师:网易游戏占营收91% 已成游戏公司
- Python基本语法(快速入门)
- 宇视服务器硬件如何安装,宇视科技无需后端平台与服务器支撑 即可形成小型人脸识别方案...
- JavaScript在线教程网址
- 基于和风天气API开发的天气查询小工具(含源码)
- 大学计算机课程学情分析,大学计算机基础课程教学内容调查分析.doc
- 联想拯救者15isk清灰_清灰和升级容易 联想拯救者14拆机解析
热门文章
- 英文操作系统 Myeclipse Console 乱码问题
- (已解决)Mybatis:Result Maps collection does not contain value for 报错
- JavaScript中的一等公民: 函数(Function)
- 谷歌借力AlphaGo造大模型,称其秒杀ChatGPT!
- 不花门票钱!斯蒂芬·库里在眼前!NBA揭幕战用VR技术转播!
- 小江cocos2d-x 3.3游戏学习之旅之观察者模式
- 什么样的员工适合互联网公司?
- ROS学习(四):消息格式
- 微信小程序的启动流程
- one + two = 3 C语言