Python 深度学习AI - 图像分割
- 第一章:深度学习平台飞浆 paddle 的环境搭建
- ① 效率更高的 gpu 版本的安装
- ② 判断是否支持 gpu 版本
- ③ 退而求其次,普通版本的安装
- ④ paddlehub 的安装
- 第二章:调用训练好的库进行图像分割效果演示
- ① 演示一:ace2p 模型
- ② 演示二:humanseg_server 模型
- ③ 演示三:deeplabv3p_xception65_humanseg 模型
第一章:深度学习平台飞浆 paddle 的环境搭建
① 效率更高的 gpu 版本的安装
通过 python -m pip install paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simple
来进行安装。
paddle.utils.run_check()
可以检测 paddle 的安装情况。
② 判断是否支持 gpu 版本
如果报下面的错误,说明你的显卡不支持 GPU。
You are using GPU version PaddlePaddle, but there is no GPU detected on your machine. Maybe CUDA devices is not set properly.
译:
你使用的是GPU版本的PaddlePaddle,但在你的机器上没有检测到GPU。可能CUDA设备设置不正确。
UserWarning: You are using GPU version Paddle, but your CUDA device is not set properly. CPU device will be used by default.
译:
用户警告:你正在使用GPU版本的飞桨,但是你的CUDA设备没有正确设置。默认使用CPU设备。
③ 退而求其次,普通版本的安装
那就用下面的命令进行卸载:
python -m pip uninstall paddlepaddle-gpu
卸载后再安装 cpu 版本的:
python -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
不卸载也可以,上面说会默认使用 cpu 的,也可以正常用,只是不能体验 cpu 的速度了。
④ paddlehub 的安装
然后是安装 paddlehub 了,我们将要用到的训练模型就来自于 paddlehub。
python -m pip install paddlehub -i https://mirror.baidu.com/pypi/simple
Successfully installed Babel-2.9.1 Flask-Babel-2.0.0 Jinja2-3.0.1 MarkupSafe-2.0.1 Werkzeug-2.0.1 backports.entry-points-selectable-1.1.0 bce-python-sdk-0.8.61 cfgv-3.3.0 click-8.0.1 colorama-0.4.4 colorlog-5.0.1 cycler-0.10.0 dill-0.3.4 distlib-0.3.2 easydict-1.9 filelock-3.0.12 flake8-3.9.2 flask-2.0.1 gitdb-4.0.7 gitpython-3.1.18 h5py-3.3.0 identify-2.2.11 itsdangerous-2.0.1 jieba-0.42.1 joblib-1.0.1 kiwisolver-1.3.1 matplotlib-3.4.2 mccabe-0.6.1 multiprocess-0.70.12.2 nodeenv-1.6.0 opencv-python-4.5.3.56 packaging-21.0 paddle2onnx-0.7 paddlehub-2.1.0 paddlenlp-2.0.6 pandas-1.3.0 platformdirs-2.0.2 pre-commit-2.13.0 pycodestyle-2.7.0 pycryptodome-3.10.1 pyflakes-2.3.1 pyparsing-2.4.7 python-dateutil-2.8.2 pytz-2021.1 pyyaml-5.4.1 pyzmq-22.1.0 rarfile-4.0 scikit-learn-0.24.2 scipy-1.7.0 seqeval-1.2.2 shellcheck-py-0.7.2.1 smmap-4.0.0 threadpoolctl-2.2.0 toml-0.10.2 tqdm-4.61.2 virtualenv-20.6.0 visualdl-2.2.0`
第二章:调用训练好的库进行图像分割效果演示
① 演示一:ace2p 模型
下面这是原图,接下来演示下不同模型分割图像的效果图。
这个分割的效果看着还可以。
import paddlehub as hub seg = hub.Module(name='ace2p') path = './image/baozi.jpg' seg.segmentation(paths=[path],visualization=True, output_dir="./image")
每次加载新的模型会下载对应的模型。
② 演示二:humanseg_server 模型
下面腿部识别的不是很好。
import paddlehub as hub seg = hub.Module(name='humanseg_server') path = './image/baozi.jpg' seg.segment(paths=[path],visualization=True, output_dir="./image")
③ 演示三:deeplabv3p_xception65_humanseg 模型
主要训练的模型都是人类图像,所以这个豹子的识别效果差了一些,更多的需要大家自己来尝试了。
import paddlehub as hub seg = hub.Module(name='deeplabv3p_xception65_humanseg') path = './image/baozi.jpg' seg.segmentation(paths=[path],visualization=True, output_dir="./image")
喜欢的点个赞❤吧!