在我一开始接触CV的时候,所有的资料都和我说,OpenCV,甚至一段很长一段时间里,我以为OpenCV就是CV世界的全部,但是随着研究的深入。。
对不起,是我肤浅了。。。
但是不可否认的是它霸主的地位
但是有个奇怪的事情,就是它的Python API我是死活也找不到。。。而且,新添加的算法,都是C++的,我今天看见加了一个无损的ROI复制的功能,C++写的,你想用Python?吃屁吧你!(除了自己写)
但是它的文档依旧是很不错的学习资料
另外我也推荐这两本书(后面的小说请忽视)
而在使用的内部也是就导入了了C++的一些编译好的文件
当然也可以去看Pypi上面的库
可以看到你pip的都是机器自动化编译的
库可以使用dorker编译
其实更新速度倒是很快,但是文档你看着C++的,写着Python,有点难受。
但是它给了一给pyi的文件,可以辅助编程。
是我肤浅了。。。VScode的一个插件生成的。
真真正正的CV2 是这样的
虽然写文字2不该 一贬一扶,但是针对现阶段的这个很烂的学习水平,纯C++属实是有点难为我。
所以就要找一个纯Python实现,而且功能不差,依赖的库又少,以及还在持续更新的库。
经过对比:
这个库映入眼帘
几乎是纯Python编写
持续更新
丰富的Demo
一份简短但是不失实用性的小手册
丰富的API文档
下载源码以后,打开核心的库,可以看到有着明显的分层
打开IO模块
可以看到实现其实是很简短的
是不是几乎是看懂了(我怕你看不懂)
当然了,这些编写都是符合pep8的规范的,我扫描了一下,确实是格式的毛病不多。
在这个data的文件夹里面有很多预先设置的图像
我们拿猫开刀
注意这个显示的时候没有实现单独的解码器,而是进行了复用
这里我也把掩码的数组打印出来了
最终我们的猫猫被处理出来
当然也有可以生成3维的图形啥的
这些就是库可以完成的内容,很多
平时图像处理要完成一些奇奇怪怪的预处理,这里也很完整的有实现过程
这里有一个奇怪的文件夹
查了一下是好像是这个
基准测试
基准测试是指通过设计科学的测试方法、测试工具和测试系统,实现对一类测试对象的某项性能指标进行定量的和可对比的测试。
突然发现微信的编辑器,有这个功能了
在doc里面,还有一些demo
随便看一个(就是第一个)
另外一个demo
用的时候导入最顶层的skimage
如果不指定会导入所有的模块
当然也可以使用这样的语句把所有的自带图片注册到系统路径
但是它对视频的处理不友好,可以使用PyAV这个库,当然你要下载二进制的FFmpeg。
https://github.com/BtbN/FFmpeg-Builds/releases
https://joblib.readthedocs.io/en/latest/
图像处理需要进行大量的重复操作,也可以使用Jpblib来加速这个过程。
总的来说,这个库是现阶段和适合深入研究的库,至少以Numpy打底,日后搞什么都OK。