基于scikit图像的数独库提取
sudokuextract的Python项目详细描述
数独提取物
用于使用scikit-image从图像中提取数独的库。
要求
- numpy>=1.9.2
- scipy>=0.15.1
- scikit-image<0.12.0
- Pillow>=3.1.0
- pyefd>=0.1.2
- dlxsudoku>=0.10.0
使用量
通过pip:
安装$ pip install sudokuextract
sudokuextract是一个从图像中解析sudokus的工具,主要是 能够将它发送给某种解算器。它适用于 对输入图像进行图像分析,然后使用k近邻 分类器以确定哪个框中存在的数字。
SudokuExtract可以用作命令行工具:
parse-sudoku -p /path/to/sudoku_image.jpg
它在终端上打印解析的数独。也可以称为 使用图像的URL:
parse-sudoku -u http://www.domain.com/sudoku.jpg
它还可以用作常规python包:
In [1]: from sudokuextract.extract import extract_sudoku, load_image, predictions_to_suduko_string In [2]: img = load_image('/path/to/sudoku_image.jpg') In [3]: predictions, sudoku_box_images, whole_sudoku_image = extract_sudoku(img) In [4]: print(predictions_to_suduko_string(predictions)) 800603001 057401630 000000000 006109800 400000007 001805400 000000000 072504310 900302004
当 预测数字;有关详细信息,请参阅文档。
文件
待定。
参考文献
这个库包括用mnist数据集中的数据训练的分类器。 (此数据也包含在sudokuextract中)。
[1]LeCun et al. (1999): The MNIST Dataset Of Handwritten Digits
sudokuextract包的当前解析策略是 灵感来源于此博客:
V0.8.6(2016-04-16)
- 将sudokuextract.extract的主函数改为print和 不退还任何东西。
V0.8.5(2016-03-10)
- 用二元腐蚀替换ndi.binary_fill_holes,并将要测试的blob数量增加到2。
V0.8.4(2016-03-10)
- 新的分类器。
- 附加数据为1:s的新数据。
V0.8.3(2016-03-09)
- 再次禁用角解析解决方案。
- 扭曲图像现在可以创建更小的图像以防止内存问题。
- 这也提高了速度,至少是4倍。
- apply_gaussian现在首先对整个图像应用高斯。
- 测试现在可以使用一个tar图像文件,该文件可以从web上下载。
- 还删除了lambda函数以支持functools.partial。
V0.8.2(2016-03-07)
- 将scikit映像版本限制为<;0.12。
V0.8.1(2016-03-06)
- 新的分类与sudokuextract和mnist数据。
- 新数据。
- mnist数据与sudokuextract数据分开存储。
- 由于训练数据增加,最近的邻居增加到10个。
- 为v0.8.0中添加的新功能修复了几个小错误。
v0.8.0(2016-03-05)
- 具有mnist数据的新分类器。
- 数独句法分析的新方法。
- 使用dlxsudoku尝试分类正确解析数独。
- 删除了很多不推荐使用的代码。
v0.7.0(2016-02-26)
- 两种不同的提取方法:
- 局部阈值
- 整个图像的自适应阈值
- 广泛重构和更新分类器。
V0.6.1(2016-02-20)
- python 3中的测试补丁。
v0.6.0(2016-02-19)
- 简化的blob提取。
- 为to_binary_adaptive添加了自适应块大小。
- 增加了从元上都取数独的测试。
v0.5.0(2016-02-18)
- 消除了对scikit学习的依赖。
- 默认情况下包括一个自己的k近邻分类器。
v0.4.0(2016-02-17)
- 在硫醇释放量为pypi