How to video classification using feature extraction

5 次查看(过去 30 天)
Hello. I want to classify videos using several feature extraction.
I used HOG(histogram of oriented gradients), optical flow as feature extraction.
However, the accuracy of classification is not good. just 60% accuracy.
Could you give some ideas to improve accuracy?
This code is using HOG.
clear all
close all
%// read the video:
list = dir('*.avi')
% loop through the filenames in the list
for k = 1:length(list)
reader = VideoReader(list(k).name);
vid = {};
while hasFrame(reader)
vid{end+1} = readFrame(reader);
end
for i=1:25
fIdx(i) = i; %// do it for frame 1 ~ 60
frameGray{i} = rgb2gray(vid{fIdx(i)});
[featureVector{i},hogVisualization{i}] = extractHOGFeatures(frameGray{i});
end
end
X = cell2mat(featureVector');
  2 个评论
Kenta
Kenta 2020-3-28
related to your question, a video classification with CNN and LSTM would be very effective.
Pls find the example code below.
Ramesh M
Ramesh M 2021-3-25
But in this above document with CNN and LSTM have error on activation function.
Kindly giev me solution

请先登录,再进行评论。

采纳的回答

Shishir Singhal
Shishir Singhal 2020-4-9
For video classification, you can use CNN for extracting spatial features. CNN is capable to extract deep features that HOG and other handcrafted feature extraction techniques might not be albe to. Use LSTM for capturing temporal features beacause you also need to have some sequential information between frames in a video.
You can read about CNN and LSTM in links here :

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Recognition, Object Detection, and Semantic Segmentation 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by