guchengxi1994 / simple-tools-for-machine-learning

Simple tools for deep learning. Including computer vision, machine learning,...
https://guchengxi1994.github.io/simple-tools-for-machine-learning/
MIT License
21 stars 2 forks source link
data-augmentation deep-learning flutter machine-learning python

simple-tools-for-machine-learning(MLTools)

Simple tools for machine learning. Including computer vision, deep learning,...



mltools

用于机器学习/深度学习/机器视觉的小工具,但是不仅于此。

Code style: black Build Status Coverage Status

UI-tools 部分界面,详情请看文档。

demo1 demo2
20220719_1 20220719_2
demo3 ...
20220719_1

server,详情请看文档。


requirements

  • numpy

  • scipy

  • scikit_image

  • tqdm

  • xmltodict

  • matplotlib

  • PyYAML

    PyYAML 在低版本(5.3左右)有一个致命的漏洞,但是它是distutils,在升级的时候使用以下指令

    pip3 install --ignore-installed PyYAML

    或者指定版本号

    pip3 install --ignore-installed PyYAML==5.4

How to use

note:

  • 测试用的图像为GAN生成,并无侵权行为

    The testing images are generated by Gan. There is no infringement.

  • 这个repo是mask2json的一次重构,原始的代码是使用python3.6完成的,同时numpy等包的版本也比较低(高版本出了很多问题,尤其是numpy,有的时候3.8版本可以正常通过测试3.9版本就会出错);加上同时使用了opencv-pythonscikit_image做图像处理,有点冗余;而且一直想做的可视化界面也半途而废了,所以才有了重构的想法

    This repo is a refactor of mask2json. The original codes are completed with python3.6, and the versions of packages such as numpy are relatively low (there are many problems with the higher version, especially numpy. Sometimes version 3.8 can pass the tests normally, but version 3.9 will raise errors); In addition, both opencv-python and scikit are used in image processing , which is redundant; That's why I came up with the idea of reconstruction

  • 可视化界面有可能会用flutter做,参考我用flutter做的移动端标注工具,不过可能不会提供修改的功能(稍微有点复杂)

    The UI tool may be developed with flutter. Refer to the mobile end annotation tool I made with flutter.

  • skimage 保存png的时候很慢,保存成jpg的时候要快很多,尽量使用jpg保存。参考这个 issue

    skimage saves PNGs is slow, but it saves JPGs is faster. Refer to this issue

  • inpaint增广,印象中使用opencv没有这么慢的(图片越大越慢,同时有可能OOM),尽量少用

    inpaint is slow with skimage . Using opencv-python is faster.

进度