专栏名称: 机器之心
专业的人工智能媒体和产业服务平台
目录
相关文章推荐
爱可可-爱生活  ·  【[157星]YOLOE:实时“看见”一切的 ... ·  昨天  
AIGC开放社区  ·  AI紧箍咒!OpenAI发布CoT监控,阻止 ... ·  2 天前  
AIGC开放社区  ·  AI紧箍咒!OpenAI发布CoT监控,阻止 ... ·  2 天前  
爱可可-爱生活  ·  【[35星]YALS:一个为llama.cp ... ·  3 天前  
爱可可-爱生活  ·  【[245星]PurrCrypt:用可爱的猫 ... ·  3 天前  
黄建同学  ·  有朋友说Trace也不错,还支持了Claud ... ·  3 天前  
51好读  ›  专栏  ›  机器之心

资源 | 如何通过CRF-RNN模型实现图像语义分割任务

机器之心  · 公众号  · AI  · 2017-08-13 10:58

正文

选自GitHub

作者:Shuai Zheng等

机器之心编译

参与:蒋思源


本 Github 项目通过结合 CNN 和 CRF-RNN 模型实现图像的语义分割,读者可以跟随该项目利用 Keras/Tensorflow 实现这一过程。



  • 展示地址:http://crfasrnn.torr.vision (http://crfasrnn.torr.vision/)

  • 项目地址:https://github.com/sadeepj/crfasrnn_keras


本 Github 项目包含使用 Keras/TensorFlow 代码实现「CRF-RNN」图像语义分割的方法,该论文《Conditional Random Fields as Recurrent Neural Networks》最先发表在 ICCV2015 中。本项目的展示同样获得了当年最佳展示奖,本文在下面给出了该项目最初的 Caffe 代码。本项目提供的 Keras/TensorFlow 代码和其效果基本和 Caffe 版本的是一样的。下面让我们跟随安装向导实现语义分割。


Caffe 版本的代码:https://github.com/torrvision/crfasrnn


安装向导


1.1 安装依赖项


安装 TensorFlow 和 Keras,然后分别跟随以下的安装向导。如果我们计划使用预训练模型,那么我们需要安装 Keras 和 HDF5/h5py。在安装这两个包之后,运行以下的命令行以确保它们都得到了正确的安装:


安装 TensorFlow:https://www.tensorflow.org/install/

安装 Keras:https://keras.io/#installation

# First, activate the correct Python virtualenv if you used one during Tensorflow/Keras installation
$ source /home/user/tensorflow_virtualenv/bin/activate  
$ python
>>> import tensorflow
>>> import keras


如果安装正确,那我们在如上导入库的时候不会看到任何报错。


1.2 构建 CRF-RNN 定制的 C++代码


检验本项目的代码,并激活 Tensorflow/Keras virtualenv,然后在 cpp 目录下运行 compile.sh 脚本。即运行以下命令行:


$ git clone https://github.com/sadeepj/crfasrnn_keras.git
$ cd crfasrnn_keras/cpp
$ source /home/user/tensorflow_virtualenv/bin/activate
$ ./compile.sh


如果构建成功,我们就能看到一个名为 high_dim_filter.so 的新文件(扩展名可能会根据我们的系统而不同)。如果构建失败,请查看 compile.sh 文件下的命令,我们同样可以参看 TensorFlow 构建定制化操作的官方向导。


官方构建向导地址:https://www.tensorflow.org/extend/adding_an_op#build_the_op_library


1.3 下载预训练模型权重


下载模型权重后放在 srfasrnn_keras 目录下,并且命名为 crfrnn_keras_model.h5。


预训练权重下载地址:https://goo.gl/ciEYZi







请到「今天看啥」查看全文