FCN (Fully Convolutional Network) is deep fully convolutional neural network architecture for semantic pixel-wise segmentation

Overview

FCN_via_Keras

FCN

FCN (Fully Convolutional Network) is deep fully convolutional neural network architecture for semantic pixel-wise segmentation. This is implementation of "https://arxiv.org/abs/1605.06211" by using Keras which is a neural networks library. FCN can train by using any size of image, but I trained this network using the images of the same size (224 * 224).

Usage

train

$ python train.py -tr 
   
     -ta 
    
      -tt 
      -e 
     
       -b 
      

      
     
    
   

Example

$ python train.py -tr /Volumes/DATASET2/VOCdevkit/VOC2012/JPEGImages/ -ta /Volumes/DATASET2/VOCdevkit/VOC2012/SegmentationClass/ -t train.txt

predict

$ pyton predict.py -i 
   

   

Example

$ python train.py -i demo_imgs/2011_003255.jpg

Caution

Please use theano as backend because this couldn't work on tensorflow backend. I'm trying debug now. I update this code if I get factor of that.

You might also like...
Per-Pixel Classification is Not All You Need for Semantic Segmentation
Per-Pixel Classification is Not All You Need for Semantic Segmentation

MaskFormer: Per-Pixel Classification is Not All You Need for Semantic Segmentation Bowen Cheng, Alexander G. Schwing, Alexander Kirillov [arXiv] [Proj

Pytorch Implementation for NeurIPS (oral) paper: Pixel Level Cycle Association: A New Perspective for Domain Adaptive Semantic Segmentation

Pixel-Level Cycle Association This is the Pytorch implementation of our NeurIPS 2020 Oral paper Pixel-Level Cycle Association: A New Perspective for D

[CVPR'22] Weakly Supervised Semantic Segmentation by Pixel-to-Prototype Contrast
[CVPR'22] Weakly Supervised Semantic Segmentation by Pixel-to-Prototype Contrast

wseg Overview The Pytorch implementation of Weakly Supervised Semantic Segmentation by Pixel-to-Prototype Contrast. [arXiv] Though image-level weakly

code for paper
code for paper "Does Unsupervised Architecture Representation Learning Help Neural Architecture Search?"

Does Unsupervised Architecture Representation Learning Help Neural Architecture Search? Code for paper: Does Unsupervised Architecture Representation

 Recall Loss for Semantic Segmentation (This repo implements the paper: Recall Loss for Semantic Segmentation)
Recall Loss for Semantic Segmentation (This repo implements the paper: Recall Loss for Semantic Segmentation)

Recall Loss for Semantic Segmentation (This repo implements the paper: Recall Loss for Semantic Segmentation) Download Synthia dataset The model uses

A PyTorch implementation for V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation
A PyTorch implementation for V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation

A PyTorch implementation of V-Net Vnet is a PyTorch implementation of the paper V-Net: Fully Convolutional Neural Networks for Volumetric Medical Imag

Train neural network for semantic segmentation (deep lab V3) with pytorch in less then 50 lines of code

Train neural network for semantic segmentation (deep lab V3) with pytorch in 50 lines of code Train net semantic segmentation net using Trans10K datas

DeepHyper: Scalable Asynchronous Neural Architecture and Hyperparameter Search for Deep Neural Networks
DeepHyper: Scalable Asynchronous Neural Architecture and Hyperparameter Search for Deep Neural Networks

What is DeepHyper? DeepHyper is a software package that uses learning, optimization, and parallel computing to automate the design and development of

Speech Separation Using an Asynchronous Fully Recurrent Convolutional Neural Network
Speech Separation Using an Asynchronous Fully Recurrent Convolutional Neural Network

Speech Separation Using an Asynchronous Fully Recurrent Convolutional Neural Network This repository is the official implementation of Speech Separati

Comments
  • Run Error

    Run Error

    When I ran train, I got the message below. How can I fix it?

    Using Theano backend. WARNING (theano.sandbox.cuda): The cuda backend is deprecated and will be removed in the next release (v0.10). Please switch to the gpuarray backend. You can get more information about how to switch at this URL: https://github.com/Theano/Theano/wiki/Converting-to-the-new-gpu-back-end%28gpuarray%29

    Using gpu device 0: GeForce GTX 1080 Ti (CNMeM is disabled, cuDNN 5110) Traceback (most recent call last): File "train.py", line 39, in FCN = FullyConvolutionalNetwork(img_height=img_size, img_width=img_size, FCN_CLASSES=nb_class) File "/home/takeichi/Deeplearning/FCN_via_keras/model.py", line 38, in init input_shape=(3, self.img_height, self.img_width)) File "/usr/local/lib/python2.7/dist-packages/keras/applications/vgg16.py", line 79, in VGG16 include_top=include_top) File "/usr/local/lib/python2.7/dist-packages/keras/applications/imagenet_utils.py", line 131, in _obtain_input_shape 'input_shape=' + str(input_shape) + '') ValueError: The input must have 3 channels; got input_shape=(3, 224, 224)

    .keras/keras.json is below. { "epsilon": 1e-07, "floatx": "float32", "image_data_format": "th", "backend": "theano" }

    Thank you.

    opened by kazunaritakeichi 0
  • why loss is so large?

    why loss is so large?

    I test your code in VOC2012. I found loss is so large.That's why? Epoch 1/100 1464/1464 [==============================] - 224s - loss: 380192.1799
    Epoch 2/100 1464/1464 [==============================] - 217s - loss: 374605.0454
    Epoch 3/100 1464/1464 [==============================] - 216s - loss: 374605.0454
    Epoch 4/100 1464/1464 [==============================] - 216s - loss: 374605.0454

    opened by mjiansun 0
  • How can I run this code to image segment,or,Can I use my own dataset to train the model.

    How can I run this code to image segment,or,Can I use my own dataset to train the model.

    1.I do not know how to run this code, some thing wrong~ OSError: Unable to open file (Unable to open file: name = './weights/fcn_params', error = 2, error message = 'no such file or directory', flags = 0, o_flags = 0)

    2.I have my own datasets(.jpg images),training data.I do not known how to use them.

    opened by Kaido0 1
  • The RGB of predict result is always (255, 255, 255)

    The RGB of predict result is always (255, 255, 255)

    Hi k3nt0w, I use your FCN to do semantic image segmentation. After I train FCN and run predict.py (visualize(predict("2011_003151", "FCN"), "2011_003151")), the result image is always blank. I have no idea about this result. Could you have any suggestion?

    There is my training result: python train.py
    Using Theano backend.
    Epoch 1/20
    20/20 [==============================] - 47s - loss: 3.0276 - acc: 0.4169
    Epoch 2/20
    20/20 [==============================] - 45s - loss: 1.8475 - acc: 0.7483
    Epoch 3/20
    20/20 [==============================] - 61s - loss: 2.1842 - acc: 0.6822
    Epoch 4/20
    20/20 [==============================] - 55s - loss: 1.6089 - acc: 0.7439
    Epoch 5/20
    20/20 [==============================] - 50s - loss: 1.4220 - acc: 0.7532
    Epoch 6/20
    20/20 [==============================] - 46s - loss: 1.8194 - acc: 0.6313
    Epoch 7/20
    20/20 [==============================] - 45s - loss: 1.2417 - acc: 0.7648
    Epoch 8/20
    20/20 [==============================] - 46s - loss: 1.2862 - acc: 0.7911
    Epoch 9/20
    20/20 [==============================] - 45s - loss: 1.4306 - acc: 0.7102
    Epoch 10/20
    20/20 [==============================] - 45s - loss: 1.1640 - acc: 0.8106
    Epoch 11/20
    20/20 [==============================] - 45s - loss: 1.7805 - acc: 0.6463
    Epoch 12/20
    20/20 [==============================] - 46s - loss: 1.4626 - acc: 0.7167
    Epoch 13/20
    20/20 [==============================] - 45s - loss: 0.9658 - acc: 0.8034
    Epoch 14/20
    20/20 [==============================] - 45s - loss: 1.4806 - acc: 0.7155
    Epoch 15/20
    20/20 [==============================] - 46s - loss: 1.1805 - acc: 0.8013
    Epoch 16/20
    20/20 [==============================] - 46s - loss: 1.3589 - acc: 0.7372
    Epoch 17/20
    20/20 [==============================] - 51s - loss: 1.3243 - acc: 0.7290
    Epoch 18/20
    20/20 [==============================] - 52s - loss: 1.1608 - acc: 0.7704
    Epoch 19/20
    20/20 [==============================] - 51s - loss: 1.2211 - acc: 0.7372
    Epoch 20/20
    20/20 [==============================] - 47s - loss: 0.8725 - acc: 0.7926

    Regards, chungfu27

    opened by chungfu27 0
Owner
Kento Watanabe
Kento Watanabe
Pixel-wise segmentation on VOC2012 dataset using pytorch.

PiWiSe Pixel-wise segmentation on the VOC2012 dataset using pytorch. FCN SegNet PSPNet UNet RefineNet For a more complete implementation of segmentati

Bodo Kaiser 378 Dec 30, 2022
Retinal Vessel Segmentation with Pixel-wise Adaptive Filters (ISBI 2022)

Retinal Vessel Segmentation with Pixel-wise Adaptive Filters (ISBI 2022) Introdu

anonymous 14 Oct 27, 2022
Official code of Retinal Vessel Segmentation with Pixel-wise Adaptive Filters and Consistency Training

Official code of Retinal Vessel Segmentation with Pixel-wise Adaptive Filters and Consistency Training (ISBI 2022)

anonymous 7 Feb 10, 2022
Learning Pixel-level Semantic Affinity with Image-level Supervision for Weakly Supervised Semantic Segmentation, CVPR 2018

Learning Pixel-level Semantic Affinity with Image-level Supervision This code is deprecated. Please see https://github.com/jiwoon-ahn/irn instead. Int

Jiwoon Ahn 337 Dec 15, 2022
Code for "PVNet: Pixel-wise Voting Network for 6DoF Pose Estimation" CVPR 2019 oral

Good news! We release a clean version of PVNet: clean-pvnet, including how to train the PVNet on the custom dataset. Use PVNet with a detector. The tr

ZJU3DV 722 Dec 27, 2022
This is an official implementation of "Polarized Self-Attention: Towards High-quality Pixel-wise Regression"

Polarized Self-Attention: Towards High-quality Pixel-wise Regression This is an official implementation of: Huajun Liu, Fuqiang Liu, Xinyi Fan and Don

DeLightCMU 212 Jan 8, 2023
Tools to create pixel-wise object masks, bounding box labels (2D and 3D) and 3D object model (PLY triangle mesh) for object sequences filmed with an RGB-D camera.

Tools to create pixel-wise object masks, bounding box labels (2D and 3D) and 3D object model (PLY triangle mesh) for object sequences filmed with an RGB-D camera. This project prepares training and testing data for various deep learning projects such as 6D object pose estimation projects singleshotpose, as well as object detection and instance segmentation projects.

null 305 Dec 16, 2022
Some code of the implements of Geological Modeling Using 3D Pixel-Adaptive and Deformable Convolutional Neural Network

3D-GMPDCNN Geological Modeling Using 3D Pixel-Adaptive and Deformable Convolutional Neural Network PyTorch implementation of "Geological Modeling Usin

null 5 Nov 21, 2022
HyperSeg: Patch-wise Hypernetwork for Real-time Semantic Segmentation Official PyTorch Implementation

: We present a novel, real-time, semantic segmentation network in which the encoder both encodes and generates the parameters (weights) of the decoder. Furthermore, to allow maximal adaptivity, the weights at each decoder block vary spatially. For this purpose, we design a new type of hypernetwork, composed of a nested U-Net for drawing higher level context features

Yuval Nirkin 182 Dec 14, 2022
Exploring Cross-Image Pixel Contrast for Semantic Segmentation

Exploring Cross-Image Pixel Contrast for Semantic Segmentation Exploring Cross-Image Pixel Contrast for Semantic Segmentation, Wenguan Wang, Tianfei Z

Tianfei Zhou 510 Jan 2, 2023