├── README.md ├── VGG_mean.mat ├── demo_a_fcn.m ├── demo_m_fcn.m ├── example.avi ├── example ├── flow_x_0001.jpg ├── flow_x_0002.jpg ├── flow_x_0003.jpg ├── flow_x_0004.jpg ├── flow_x_0005.jpg ├── flow_x_0006.jpg ├── flow_x_0007.jpg ├── flow_x_0008.jpg ├── flow_x_0009.jpg ├── flow_x_0010.jpg ├── flow_x_0011.jpg ├── flow_x_0012.jpg ├── flow_x_0013.jpg ├── flow_x_0014.jpg ├── flow_x_0015.jpg ├── flow_x_0016.jpg ├── flow_x_0017.jpg ├── flow_x_0018.jpg ├── flow_x_0019.jpg ├── flow_x_0020.jpg ├── flow_y_0001.jpg ├── flow_y_0002.jpg ├── flow_y_0003.jpg ├── flow_y_0004.jpg ├── flow_y_0005.jpg ├── flow_y_0006.jpg ├── flow_y_0007.jpg ├── flow_y_0008.jpg ├── flow_y_0009.jpg ├── flow_y_0010.jpg ├── flow_y_0011.jpg ├── flow_y_0012.jpg ├── flow_y_0013.jpg ├── flow_y_0014.jpg ├── flow_y_0015.jpg ├── flow_y_0016.jpg ├── flow_y_0017.jpg ├── flow_y_0018.jpg ├── flow_y_0019.jpg └── flow_y_0020.jpg └── proto ├── actionness_a-fcn_scale_1_deploy.prototxt ├── actionness_a-fcn_scale_2_deploy.prototxt ├── actionness_a-fcn_scale_3_deploy.prototxt ├── actionness_a-fcn_scale_4_deploy.prototxt ├── actionness_m-fcn_scale_1_deploy.prototxt ├── actionness_m-fcn_scale_2_deploy.prototxt ├── actionness_m-fcn_scale_3_deploy.prototxt └── actionness_m-fcn_scale_4_deploy.prototxt /README.md: -------------------------------------------------------------------------------- 1 | # Actionness Estimation Using Hybrid FCNs 2 | Here we provide the code of actionness estimation with hybrid fully convolutional networks from the following paper: 3 | 4 | Actionness Estimation Using Hybrid Fully Convolutional Netoworks 5 | Limin Wang, Yu Qiao, Xiaou Tang, and Luc Van Gool, in CVPR, 2016 6 | 7 | ### Updates 8 | 9 | - Jul 22, 2016 10 | * Initilaize repo of actionness estimation. 11 | 12 | ### Demo code 13 | - **demo_a_fcn.m**: an example showing actionness estimation with A-FCN. 14 | - **demo_m_fcn.m**: an example showing actionness estimation with M-FCN. 15 | - For optical flow extraction, we use TVL1 Optical Flow
16 | You need download our dense flow code and compile it by yourself. [Dense Flow](https://github.com/wanglimin/dense_flow) 17 | 18 | ### Download 19 | - Actionness estimation models (A-FCN) on the dataset of Stanford 40:
20 | http://mmlab.siat.ac.cn/actionness/stanford40_actionness_a-fcn.caffemodel 21 | - Actionness estimation models (A-FCN and M-FCN) on the dataset of UCF Sports:
22 | http://mmlab.siat.ac.cn/actionness/ucf_sports_actionness_a-fcn.caffemodel 23 | http://mmlab.siat.ac.cn/actionness/ucf_sports_actionness_m-fcn.caffemodel 24 | - Actionness estimation models (A-FCN and M-FCN) on the dataset of JHMDB:
25 | http://mmlab.siat.ac.cn/actionness/jhmdb_split1_actionness_a-fcn.caffemodel 26 | http://mmlab.siat.ac.cn/actionness/jhmdb_split1_actionness_m-fcn.caffemodel
27 | http://mmlab.siat.ac.cn/actionness/jhmdb_split2_actionness_a-fcn.caffemodel 28 | http://mmlab.siat.ac.cn/actionness/jhmdb_split2_actionness_m-fcn.caffemodel
29 | http://mmlab.siat.ac.cn/actionness/jhmdb_split3_actionness_a-fcn.caffemodel 30 | http://mmlab.siat.ac.cn/actionness/jhmdb_split3_actionness_m-fcn.caffemodel 31 | 32 | ### Questions 33 | Contact 34 | - [Limin Wang](http://wanglimin.github.io/) 35 | 36 | 37 | -------------------------------------------------------------------------------- /VGG_mean.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/VGG_mean.mat -------------------------------------------------------------------------------- /demo_a_fcn.m: -------------------------------------------------------------------------------- 1 | % demo code of actionness estimation 2 | rgb_video = 'example.avi'; 3 | flow_video = 'example/'; 4 | gpu_id = 0; 5 | 6 | 7 | % Read video 8 | vidObj = VideoReader(rgb_video); 9 | video = read(vidObj); 10 | 11 | % Data preparation 12 | IMAGE_MEAN = load('VGG_mean.mat'); 13 | IMAGE_MEAN = IMAGE_MEAN.image_mean; 14 | IMAGE_MEAN = imresize(IMAGE_MEAN,[240,320]); 15 | test_image = single(video(:,:,[3,2,1],:)); 16 | test_image = bsxfun(@minus,test_image,IMAGE_MEAN); 17 | test_image = permute(test_image,[2,1,3,4]); 18 | 19 | batch_size = 50; 20 | num_images = size(test_image,4); 21 | num_batches = ceil(num_images/batch_size); 22 | 23 | model_file = 'jhmdb_split1_actionness_a-fcn.caffemodel'; 24 | 25 | % Multi-scale test 26 | scale = 1; 27 | model_def_file = ['proto/actionness_a-fcn_scale_', num2str(scale), '_deploy.prototxt']; 28 | caffe.reset_all(); 29 | caffe.set_mode_gpu(); 30 | caffe.set_device(gpu_id); 31 | net = caffe.Net(model_def_file, model_file, 'test'); 32 | 33 | a_fcn_scale_1 = zeros(10, 13, 2, size(test_image,4)); 34 | images = zeros(214, 160, 3, batch_size, 'single'); 35 | for bb = 1 : num_batches 36 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 37 | tmp = test_image(:,:,:,range); 38 | for i =1:size(tmp,4) 39 | images(:,:,:,i) = imresize(tmp(:,:,:,i),[214, 160]); 40 | end 41 | net.blobs('data').set_data(images); 42 | net.forward_prefilled(); 43 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 44 | a_fcn_scale_1(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 45 | end 46 | 47 | scale = 2; 48 | model_def_file = ['proto/actionness_a-fcn_scale_', num2str(scale), '_deploy.prototxt']; 49 | caffe.reset_all(); 50 | caffe.set_mode_gpu(); 51 | caffe.set_device(gpu_id); 52 | net = caffe.Net(model_def_file, model_file, 'test'); 53 | 54 | a_fcn_scale_2 = zeros(15, 20, 2, size(test_image,4)); 55 | images = zeros(320, 240, 3, batch_size, 'single'); 56 | for bb = 1 : num_batches 57 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 58 | tmp = test_image(:,:,:,range); 59 | images(:,:,:,1:size(tmp,4)) = tmp; 60 | net.blobs('data').set_data(images); 61 | net.forward_prefilled(); 62 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 63 | a_fcn_scale_2(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 64 | end 65 | 66 | scale = 3; 67 | model_def_file = ['proto/actionness_a-fcn_scale_', num2str(scale), '_deploy.prototxt']; 68 | caffe.reset_all(); 69 | caffe.set_mode_gpu(); 70 | caffe.set_device(gpu_id); 71 | net = caffe.Net(model_def_file, model_file, 'test'); 72 | 73 | a_fcn_scale_3 = zeros(22, 30, 2, size(test_image,4)); 74 | images = zeros(480, 360, 3, batch_size, 'single'); 75 | for bb = 1 : num_batches 76 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 77 | tmp = test_image(:,:,:,range); 78 | for i =1:size(tmp,4) 79 | images(:,:,:,i) = imresize(tmp(:,:,:,i),[480, 360]); 80 | end 81 | net.blobs('data').set_data(images); 82 | net.forward_prefilled(); 83 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 84 | a_fcn_scale_3(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 85 | end 86 | 87 | scale = 4; 88 | model_def_file = ['proto/actionness_a-fcn_scale_', num2str(scale), '_deploy.prototxt']; 89 | caffe.reset_all(); 90 | caffe.set_mode_gpu(); 91 | caffe.set_device(gpu_id); 92 | net = caffe.Net(model_def_file, model_file, 'test'); 93 | 94 | a_fcn_scale_4 = zeros(30, 40, 2, size(test_image,4)); 95 | images = zeros(640, 480, 3, batch_size, 'single'); 96 | for bb = 1 : num_batches 97 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 98 | tmp = test_image(:,:,:,range); 99 | for i =1:size(tmp,4) 100 | images(:,:,:,i) = imresize(tmp(:,:,:,i),[640,480]); 101 | end 102 | net.blobs('data').set_data(images); 103 | net.forward_prefilled(); 104 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 105 | a_fcn_scale_4(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 106 | end 107 | 108 | 109 | for i = 1:size(video); 110 | subplot(1,2,1); 111 | imshow(video(:,:,:,i)); 112 | subplot(1,2,2); 113 | result = (imresize(a_fcn_scale_1(:,:,2,i),[240,320]) ... 114 | +imresize(a_fcn_scale_2(:,:,2,i),[240,320])... 115 | +imresize(a_fcn_scale_3(:,:,2,i),[240,320])... 116 | +imresize(a_fcn_scale_4(:,:,2,i),[240,320]))/4; 117 | imagesc(result); 118 | axis image; axis off; 119 | pause(1); 120 | end -------------------------------------------------------------------------------- /demo_m_fcn.m: -------------------------------------------------------------------------------- 1 | % demo code of actionness estimation 2 | path_flow = 'example/'; 3 | gpu_id = 0; 4 | filelist = dir([path_flow, '*.jpg']); 5 | duration = length(filelist)/2 + 1; 6 | 7 | 8 | % Read optical flow 9 | flow = zeros(240, 320, 4, duration); 10 | pre_flow_x = []; cur_flow_x = []; 11 | pre_flow_y = []; cur_flow_y = []; 12 | for k = 1:duration 13 | if k < duration 14 | name_x = sprintf('flow_x_%04d.jpg',k); 15 | name_y = sprintf('flow_y_%04d.jpg',k); 16 | if isempty(pre_flow_x) 17 | pre_flow_x = imresize(imread([path_flow,'/',name_x]),[240,320]); 18 | pre_flow_y = imresize(imread([path_flow,'/',name_y]),[240,320]); 19 | end 20 | cur_flow_x = imresize(imread([path_flow,'/',name_x]),[240,320]); 21 | cur_flow_y = imresize(imread([path_flow,'/',name_y]),[240,320]); 22 | end 23 | flow(:,:,:,k) = cat(3,pre_flow_x,pre_flow_y,cur_flow_x,cur_flow_y); 24 | pre_flow_x = cur_flow_x; 25 | pre_flow_y = cur_flow_y; 26 | end 27 | 28 | 29 | 30 | % Data preparation 31 | flow(:) = flow(:) -128; 32 | test_image = permute(flow,[2,1,3,4]); 33 | 34 | batch_size = 50; 35 | num_images = size(test_image,4); 36 | num_batches = ceil(num_images/batch_size); 37 | 38 | model_file = 'jhmdb_split1_actionness_m-fcn.caffemodel'; 39 | 40 | % Multi-scale test 41 | scale = 1; 42 | model_def_file = ['proto/actionness_m-fcn_scale_', num2str(scale), '_deploy.prototxt']; 43 | caffe.reset_all(); 44 | caffe.set_mode_gpu(); 45 | caffe.set_device(gpu_id); 46 | net = caffe.Net(model_def_file, model_file, 'test'); 47 | 48 | m_fcn_scale_1 = zeros(10, 13, 2, size(test_image,4)); 49 | images = zeros(214, 160, 4, batch_size, 'single'); 50 | for bb = 1 : num_batches 51 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 52 | tmp = test_image(:,:,:,range); 53 | for i =1:size(tmp,4) 54 | images(:,:,:,i) = imresize(tmp(:,:,:,i),[214, 160]); 55 | end 56 | net.blobs('data').set_data(images); 57 | net.forward_prefilled(); 58 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 59 | m_fcn_scale_1(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 60 | end 61 | 62 | scale = 2; 63 | model_def_file = ['proto/actionness_m-fcn_scale_', num2str(scale), '_deploy.prototxt']; 64 | caffe.reset_all(); 65 | caffe.set_mode_gpu(); 66 | caffe.set_device(gpu_id); 67 | net = caffe.Net(model_def_file, model_file, 'test'); 68 | 69 | m_fcn_scale_2 = zeros(15, 20, 2, size(test_image,4)); 70 | images = zeros(320, 240, 4, batch_size, 'single'); 71 | for bb = 1 : num_batches 72 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 73 | tmp = test_image(:,:,:,range); 74 | images(:,:,:,1:size(tmp,4)) = tmp; 75 | net.blobs('data').set_data(images); 76 | net.forward_prefilled(); 77 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 78 | m_fcn_scale_2(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 79 | end 80 | 81 | scale = 3; 82 | model_def_file = ['proto/actionness_m-fcn_scale_', num2str(scale), '_deploy.prototxt']; 83 | caffe.reset_all(); 84 | caffe.set_mode_gpu(); 85 | caffe.set_device(gpu_id); 86 | net = caffe.Net(model_def_file, model_file, 'test'); 87 | 88 | m_fcn_scale_3 = zeros(22, 30, 2, size(test_image,4)); 89 | images = zeros(480, 360, 4, batch_size, 'single'); 90 | for bb = 1 : num_batches 91 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 92 | tmp = test_image(:,:,:,range); 93 | for i =1:size(tmp,4) 94 | images(:,:,:,i) = imresize(tmp(:,:,:,i),[480, 360]); 95 | end 96 | net.blobs('data').set_data(images); 97 | net.forward_prefilled(); 98 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 99 | m_fcn_scale_3(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 100 | end 101 | 102 | scale = 4; 103 | model_def_file = ['proto/actionness_m-fcn_scale_', num2str(scale), '_deploy.prototxt']; 104 | caffe.reset_all(); 105 | caffe.set_mode_gpu(); 106 | caffe.set_device(gpu_id); 107 | net = caffe.Net(model_def_file, model_file, 'test'); 108 | 109 | m_fcn_scale_4 = zeros(30, 40, 2, size(test_image,4)); 110 | images = zeros(640, 480, 4, batch_size, 'single'); 111 | for bb = 1 : num_batches 112 | range = 1 + batch_size*(bb-1): min(num_images,batch_size*bb); 113 | tmp = test_image(:,:,:,range); 114 | for i =1:size(tmp,4) 115 | images(:,:,:,i) = imresize(tmp(:,:,:,i),[640,480]); 116 | end 117 | net.blobs('data').set_data(images); 118 | net.forward_prefilled(); 119 | prediction = permute(net.blobs('prob').get_data(), [2,1,3,4]); 120 | m_fcn_scale_4(:,:,:,range) = prediction(:,:,:,mod(range-1,batch_size)+1); 121 | end 122 | 123 | 124 | for i = 1:size(video,4); 125 | subplot(1,2,1); 126 | imshow(video(:,:,:,i)); 127 | subplot(1,2,2); 128 | result_a = (imresize(a_fcn_scale_1(:,:,2,i),[240,320]) ... 129 | +imresize(a_fcn_scale_2(:,:,2,i),[240,320])... 130 | +imresize(a_fcn_scale_3(:,:,2,i),[240,320])... 131 | +imresize(a_fcn_scale_4(:,:,2,i),[240,320]))/4; 132 | result_m = (imresize(m_fcn_scale_1(:,:,2,i),[240,320]) ... 133 | +imresize(m_fcn_scale_2(:,:,2,i),[240,320])... 134 | +imresize(m_fcn_scale_3(:,:,2,i),[240,320])... 135 | +imresize(m_fcn_scale_4(:,:,2,i),[240,320]))/4; 136 | imagesc(result_a + result_m); 137 | axis image; axis off; 138 | pause(1); 139 | end 140 | -------------------------------------------------------------------------------- /example.avi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example.avi -------------------------------------------------------------------------------- /example/flow_x_0001.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0001.jpg -------------------------------------------------------------------------------- /example/flow_x_0002.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0002.jpg -------------------------------------------------------------------------------- /example/flow_x_0003.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0003.jpg -------------------------------------------------------------------------------- /example/flow_x_0004.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0004.jpg -------------------------------------------------------------------------------- /example/flow_x_0005.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0005.jpg -------------------------------------------------------------------------------- /example/flow_x_0006.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0006.jpg -------------------------------------------------------------------------------- /example/flow_x_0007.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0007.jpg -------------------------------------------------------------------------------- /example/flow_x_0008.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0008.jpg -------------------------------------------------------------------------------- /example/flow_x_0009.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0009.jpg -------------------------------------------------------------------------------- /example/flow_x_0010.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0010.jpg -------------------------------------------------------------------------------- /example/flow_x_0011.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0011.jpg -------------------------------------------------------------------------------- /example/flow_x_0012.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0012.jpg -------------------------------------------------------------------------------- /example/flow_x_0013.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0013.jpg -------------------------------------------------------------------------------- /example/flow_x_0014.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0014.jpg -------------------------------------------------------------------------------- /example/flow_x_0015.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0015.jpg -------------------------------------------------------------------------------- /example/flow_x_0016.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0016.jpg -------------------------------------------------------------------------------- /example/flow_x_0017.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0017.jpg -------------------------------------------------------------------------------- /example/flow_x_0018.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0018.jpg -------------------------------------------------------------------------------- /example/flow_x_0019.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0019.jpg -------------------------------------------------------------------------------- /example/flow_x_0020.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_x_0020.jpg -------------------------------------------------------------------------------- /example/flow_y_0001.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0001.jpg -------------------------------------------------------------------------------- /example/flow_y_0002.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0002.jpg -------------------------------------------------------------------------------- /example/flow_y_0003.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0003.jpg -------------------------------------------------------------------------------- /example/flow_y_0004.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0004.jpg -------------------------------------------------------------------------------- /example/flow_y_0005.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0005.jpg -------------------------------------------------------------------------------- /example/flow_y_0006.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0006.jpg -------------------------------------------------------------------------------- /example/flow_y_0007.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0007.jpg -------------------------------------------------------------------------------- /example/flow_y_0008.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0008.jpg -------------------------------------------------------------------------------- /example/flow_y_0009.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0009.jpg -------------------------------------------------------------------------------- /example/flow_y_0010.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0010.jpg -------------------------------------------------------------------------------- /example/flow_y_0011.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0011.jpg -------------------------------------------------------------------------------- /example/flow_y_0012.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0012.jpg -------------------------------------------------------------------------------- /example/flow_y_0013.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0013.jpg -------------------------------------------------------------------------------- /example/flow_y_0014.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0014.jpg -------------------------------------------------------------------------------- /example/flow_y_0015.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0015.jpg -------------------------------------------------------------------------------- /example/flow_y_0016.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0016.jpg -------------------------------------------------------------------------------- /example/flow_y_0017.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0017.jpg -------------------------------------------------------------------------------- /example/flow_y_0018.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0018.jpg -------------------------------------------------------------------------------- /example/flow_y_0019.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0019.jpg -------------------------------------------------------------------------------- /example/flow_y_0020.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanglimin/Actionness-Estimation/35221f84b765ee8b725f30648911df45b3788b54/example/flow_y_0020.jpg -------------------------------------------------------------------------------- /proto/actionness_a-fcn_scale_1_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "A-FCN_Scale_1" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 3 5 | input_dim: 160 6 | input_dim: 214 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } -------------------------------------------------------------------------------- /proto/actionness_a-fcn_scale_2_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "A-FCN_Scale_2" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 3 5 | input_dim: 240 6 | input_dim: 320 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } -------------------------------------------------------------------------------- /proto/actionness_a-fcn_scale_3_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "A-FCN_Scale_3" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 3 5 | input_dim: 360 6 | input_dim: 480 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } -------------------------------------------------------------------------------- /proto/actionness_a-fcn_scale_4_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "A-FCN_Scale_4" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 3 5 | input_dim: 480 6 | input_dim: 640 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } -------------------------------------------------------------------------------- /proto/actionness_m-fcn_scale_1_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "M-FCN_Scale_1" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 4 5 | input_dim: 160 6 | input_dim: 214 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } -------------------------------------------------------------------------------- /proto/actionness_m-fcn_scale_2_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "M-FCN_Scale_2" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 4 5 | input_dim: 240 6 | input_dim: 320 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } -------------------------------------------------------------------------------- /proto/actionness_m-fcn_scale_3_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "M-FCN_Scale_4" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 4 5 | input_dim: 360 6 | input_dim: 480 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } -------------------------------------------------------------------------------- /proto/actionness_m-fcn_scale_4_deploy.prototxt: -------------------------------------------------------------------------------- 1 | name: "M-FCN_Scale_4" 2 | input: "data" 3 | input_dim: 50 4 | input_dim: 4 5 | input_dim: 480 6 | input_dim: 640 7 | layer { 8 | name: "conv1" 9 | type: "Convolution" 10 | bottom: "data" 11 | top: "conv1" 12 | convolution_param { 13 | num_output: 96 14 | pad: 3 15 | kernel_size: 7 16 | stride: 2 17 | } 18 | } 19 | layer { 20 | name: "relu1" 21 | type: "ReLU" 22 | bottom: "conv1" 23 | top: "conv1" 24 | } 25 | layer { 26 | name: "norm1" 27 | type: "LRN" 28 | bottom: "conv1" 29 | top: "norm1" 30 | lrn_param { 31 | local_size: 5 32 | alpha: 0.0005 33 | beta: 0.75 34 | } 35 | } 36 | layer { 37 | name: "pool1" 38 | type: "Pooling" 39 | bottom: "norm1" 40 | top: "pool1" 41 | pooling_param { 42 | pool: MAX 43 | kernel_size: 3 44 | stride: 2 45 | } 46 | } 47 | layer { 48 | name: "conv2" 49 | type: "Convolution" 50 | bottom: "pool1" 51 | top: "conv2" 52 | convolution_param { 53 | num_output: 256 54 | pad: 2 55 | kernel_size: 5 56 | stride: 2 57 | } 58 | } 59 | layer { 60 | name: "relu2" 61 | type: "ReLU" 62 | bottom: "conv2" 63 | top: "conv2" 64 | } 65 | layer { 66 | name: "norm2" 67 | type: "LRN" 68 | bottom: "conv2" 69 | top: "norm2" 70 | lrn_param { 71 | local_size: 5 72 | alpha: 0.0005 73 | beta: 0.75 74 | } 75 | } 76 | layer { 77 | name: "pool2" 78 | type: "Pooling" 79 | bottom: "norm2" 80 | top: "pool2" 81 | pooling_param { 82 | pool: MAX 83 | kernel_size: 3 84 | stride: 2 85 | } 86 | } 87 | layer { 88 | name: "conv3" 89 | type: "Convolution" 90 | bottom: "pool2" 91 | top: "conv3" 92 | convolution_param { 93 | num_output: 512 94 | pad: 1 95 | kernel_size: 3 96 | } 97 | } 98 | layer { 99 | name: "relu3" 100 | type: "ReLU" 101 | bottom: "conv3" 102 | top: "conv3" 103 | } 104 | layer { 105 | name: "conv4" 106 | type: "Convolution" 107 | bottom: "conv3" 108 | top: "conv4" 109 | convolution_param { 110 | num_output: 512 111 | pad: 1 112 | kernel_size: 3 113 | } 114 | } 115 | layer { 116 | name: "relu4" 117 | type: "ReLU" 118 | bottom: "conv4" 119 | top: "conv4" 120 | } 121 | layer { 122 | name: "conv5" 123 | type: "Convolution" 124 | bottom: "conv4" 125 | top: "conv5" 126 | convolution_param { 127 | num_output: 512 128 | pad: 1 129 | kernel_size: 3 130 | } 131 | } 132 | layer { 133 | name: "relu5" 134 | type: "ReLU" 135 | bottom: "conv5" 136 | top: "conv5" 137 | } 138 | layer { 139 | name: "pool5" 140 | type: "Pooling" 141 | bottom: "conv5" 142 | top: "pool5" 143 | pooling_param { 144 | pool: MAX 145 | kernel_size: 3 146 | stride: 1 147 | pad: 1 148 | } 149 | } 150 | layer { 151 | name: "conv6" 152 | type: "Convolution" 153 | bottom: "pool5" 154 | top: "conv6" 155 | convolution_param { 156 | num_output: 1024 157 | kernel_size: 1 158 | } 159 | } 160 | layer { 161 | name: "relu6" 162 | type: "ReLU" 163 | bottom: "conv6" 164 | top: "conv6" 165 | } 166 | layer { 167 | name: "drop6" 168 | type: "Dropout" 169 | bottom: "conv6" 170 | top: "conv6" 171 | dropout_param { 172 | dropout_ratio: 0.4 173 | } 174 | } 175 | layer { 176 | name: "conv7" 177 | type: "Convolution" 178 | bottom: "conv6" 179 | top: "conv7" 180 | convolution_param { 181 | num_output: 512 182 | kernel_size: 1 183 | } 184 | } 185 | layer { 186 | name: "relu7" 187 | type: "ReLU" 188 | bottom: "conv7" 189 | top: "conv7" 190 | } 191 | layer { 192 | name: "drop7" 193 | type: "Dropout" 194 | bottom: "conv7" 195 | top: "conv7" 196 | dropout_param { 197 | dropout_ratio: 0.4 198 | } 199 | } 200 | layer { 201 | name: "conv8" 202 | type: "Convolution" 203 | bottom: "conv7" 204 | top: "conv8" 205 | convolution_param { 206 | num_output: 2 207 | kernel_size: 1 208 | } 209 | } 210 | layer { 211 | name: "prob" 212 | type: "Softmax" 213 | bottom: "conv8" 214 | top: "prob" 215 | } --------------------------------------------------------------------------------