Skip to content
This repository has been archived by the owner on Nov 17, 2023. It is now read-only.

object location and detection #214

Closed
kaishijeng opened this issue Oct 6, 2015 · 13 comments
Closed

object location and detection #214

kaishijeng opened this issue Oct 6, 2015 · 13 comments

Comments

@kaishijeng
Copy link

HI,

fast-rcnn or fcatser-rcnn is a very useful application. Both are implemented and trained in Caffe framework.
Is there a way to import its network model and pretrained model to mxnet? If not. do you have a plan to use mxnet to implement fast-rcnn or faster-rcnn?

Thanks,

Kaishi

@sunshineatnoon
Copy link

Same question here.

@antinucleon
Copy link
Contributor

I will add feature to write handcraft kernel directly in op, and we always welcome you to send PR to contribute to MXNet

@sunshineatnoon
Copy link

@antinucleon Thanks!

@futurely
Copy link

futurely commented Nov 7, 2015

Fast and Faster R-CNN's changes to Caffe are all in this commit and the object detection application is here.

Fast and Faster R-CNN change set
 - smooth l1 loss
 - roi pooling
 - expose phase in pycaffe
 - dropout scaling at test time (needed for MSRA-trained ZF network)

@kaishijeng
Copy link
Author

Any chance to add layers which are required by faster-rcnn in near future?

@loweew
Copy link

loweew commented Jan 11, 2016

are there any plans for a faster-rcnn type example in the image-classification section? This would be greatly appreciated, if possible.

@ijkguo
Copy link
Contributor

ijkguo commented Apr 24, 2016

New operator mxnet.symbol.ROIPooling is slightly tricky. Here are some key information that are missing from documentation.

import mxnet as mx
data = mx.sym.Variable('data')
# [batch_size, channel, height, width]
rois = mx.sym.Variable('rois')
# [roi_number, 5]
# last dimension is [batch index of image, x1, y1, x2, y2]
# some convolutional layer
roi_pool = mx.sym.ROIPooling(data=data, rois=rois, pooled_size=(6, 6), spatial_scale=0.0625)
# please note that batch_size changes from batch_size to roi_number after ROI pooling.

@jonbakerfish
Copy link
Contributor

@precedenceguo How to train network with mxnet.symbol.ROIPooling? Any example?

@jonbakerfish
Copy link
Contributor

jonbakerfish commented Apr 24, 2016

I noticed that the executor_manager.DataParallelExecutorGroup uses the same slices for both input data and labels. But in the case of fast-rcnn, during training, the input images are in shape (2,3,H,W) while the labels' are (128,) for the 128 ROIS. How can we change the code for training?

@ijkguo
Copy link
Contributor

ijkguo commented Apr 24, 2016

Multiple devices training split data into slices for devices. In this example, each data batch has image shape (2, 3, H, W) and label shape (128, ). Splitting data batches does not compromise each batch since loader supply data and label together in each batch. Therefore no change is necessary except the number of training devices. For the training of Fast R-CNN, it is recommended to see the original caffe version for now.

@jonbakerfish
Copy link
Contributor

I'm not using multiple devices for training. I use the python api model.fit which actually calls _train_multi_device. The executor_manager inside _train_multi_device uses the same slices for both input data and labels. It works for the case where the batch sizes are the same for both input data and label. I'm looking for advice on how to change the code accordingly when input data and label have different batch sizes.

@ijkguo
Copy link
Contributor

ijkguo commented Apr 24, 2016

There could exist some issue about varying batch size with the FeedForward API. Is there any error message or anomaly?

@tqchen
Copy link
Member

tqchen commented May 19, 2016

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants