玩了几天swift,突然又想做个图像处理小实验,还是用python吧。。。。我其实是python的小白,
按照我前面的备忘录,设置好python和vscode,开始吧。
我配置的是indexes: http://mirrors.aliyun.com/pypi/simple/
python 图像处理
第一个库当然是numpy,如果numpy能搞定,就不需要其他的库了。
结果vscode 无法解析numpy
{
"message": "unresolved import 'numpy'",
"source": "Python",
"startLineNumber": 1,
"startColumn": 6,
"endLineNumber": 1,
"endColumn": 11
}
不过把vscode的python解析器换到python2.7可以解决。但是我的虚拟环境是python3.7
切换到其他解析器,再切换回来,然后在命令行 import numpy 查看numpy版本。
然后就好了
看了一下网上的例子,python和numpy没有合适的读取图像文件的函数,其实,python那些厉害的东西,都是用其他语言写的。
这里就用opencv的python库来处理吧
在虚拟环境中安装,pip install opencv-python
关于opencv的简单使用,可以看这篇博客https://www.cnblogs.com/dongxiaodong/p/10134904.html
显式图像的时候出现错误提示
qt.qpa.plugin: Could not find the Qt platform plugin "cocoa" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
貌似需要qt和cocoa,才能在python中实现gui界面
先安装 pyqt5 ,pip install pyqt5
在安装 pip install pycocoa
还是不行,那就用其他的库看看吧
pip install scikit-image
代码如下,注意不加plt不是显示出窗口
import numpy as numpy
from skimage import io,transform
import matplotlib.pyplot as plt
import sys
print(sys.argv[0])
img=io.imread("/Users/lezi/venvs/yzm/imgs/1.png")
io.imshow(img)
plt.show()
关于skimage的学习看这个https://scikit-image.org/docs/stable/user_guide.html
或者中文文档https://cloud.tencent.com/developer/doc/1221
接下去,我们来做个斑点检测,什么是斑点检测看这里https://www.jianshu.com/p/8380b23e094f
先来看看plt的用法,https://matplotlib.org/