Dimensionality reduction in HOG feature vector
I found out the HOG feature vector of the following image in MATLAB.
Input Image
I used the following code.
I = imread('input.jpg');
I = rgb2gray(I);
[features, visualization] = extractHOGFeatures(I,'CellSize',[16 16]);
features
comes out to be a 1x1944
vector and I need to reduce the dimensionality of this vector (say to 1x100
), what method should I employ for the same?
I thought of Principal Component Analysis and ran the following in MATLAB.
prinvec = pca(features);
prinvec
comes out to be an empty matrix (1944x0
). Am I doing it wrong? If not PCA, what other methods can I use to reduce the dimension?
matlab machine-learning computer-vision pca
|
show 1 more comment
I found out the HOG feature vector of the following image in MATLAB.
Input Image
I used the following code.
I = imread('input.jpg');
I = rgb2gray(I);
[features, visualization] = extractHOGFeatures(I,'CellSize',[16 16]);
features
comes out to be a 1x1944
vector and I need to reduce the dimensionality of this vector (say to 1x100
), what method should I employ for the same?
I thought of Principal Component Analysis and ran the following in MATLAB.
prinvec = pca(features);
prinvec
comes out to be an empty matrix (1944x0
). Am I doing it wrong? If not PCA, what other methods can I use to reduce the dimension?
matlab machine-learning computer-vision pca
2
No. Not PCA. Not again. This won't work. You have only 1 observation and almost 2k features. Impossible. Please see this canonical answer as to why this is pertinently impossible.
– Adriaan
Jan 29 '16 at 11:52
@Adriaan Thanks man. I just realized what I should really do. I should loop through each frame of the video and form aNx1944
HOG matrix and then apply PCA. Is that right?
– Abdul Fatir
Jan 29 '16 at 12:14
Possibly, ifN > 1e4
, see my answer I linked on why you need some 5 times more observations than features.
– Adriaan
Jan 29 '16 at 12:17
Yes, can you write everything you mentioned as an answer so that I can mark it as an answer.
– Abdul Fatir
Jan 29 '16 at 12:19
what features are you trying to extract and what is your ultimate goal? looping through the video and applying PCA to the final feature matrix will not necessarily give you what you want
– GameOfThrows
Jan 29 '16 at 12:19
|
show 1 more comment
I found out the HOG feature vector of the following image in MATLAB.
Input Image
I used the following code.
I = imread('input.jpg');
I = rgb2gray(I);
[features, visualization] = extractHOGFeatures(I,'CellSize',[16 16]);
features
comes out to be a 1x1944
vector and I need to reduce the dimensionality of this vector (say to 1x100
), what method should I employ for the same?
I thought of Principal Component Analysis and ran the following in MATLAB.
prinvec = pca(features);
prinvec
comes out to be an empty matrix (1944x0
). Am I doing it wrong? If not PCA, what other methods can I use to reduce the dimension?
matlab machine-learning computer-vision pca
I found out the HOG feature vector of the following image in MATLAB.
Input Image
I used the following code.
I = imread('input.jpg');
I = rgb2gray(I);
[features, visualization] = extractHOGFeatures(I,'CellSize',[16 16]);
features
comes out to be a 1x1944
vector and I need to reduce the dimensionality of this vector (say to 1x100
), what method should I employ for the same?
I thought of Principal Component Analysis and ran the following in MATLAB.
prinvec = pca(features);
prinvec
comes out to be an empty matrix (1944x0
). Am I doing it wrong? If not PCA, what other methods can I use to reduce the dimension?
matlab machine-learning computer-vision pca
matlab machine-learning computer-vision pca
edited Jan 29 '16 at 21:55
rayryeng
82.7k17111139
82.7k17111139
asked Jan 29 '16 at 11:35
Abdul FatirAbdul Fatir
4,06721642
4,06721642
2
No. Not PCA. Not again. This won't work. You have only 1 observation and almost 2k features. Impossible. Please see this canonical answer as to why this is pertinently impossible.
– Adriaan
Jan 29 '16 at 11:52
@Adriaan Thanks man. I just realized what I should really do. I should loop through each frame of the video and form aNx1944
HOG matrix and then apply PCA. Is that right?
– Abdul Fatir
Jan 29 '16 at 12:14
Possibly, ifN > 1e4
, see my answer I linked on why you need some 5 times more observations than features.
– Adriaan
Jan 29 '16 at 12:17
Yes, can you write everything you mentioned as an answer so that I can mark it as an answer.
– Abdul Fatir
Jan 29 '16 at 12:19
what features are you trying to extract and what is your ultimate goal? looping through the video and applying PCA to the final feature matrix will not necessarily give you what you want
– GameOfThrows
Jan 29 '16 at 12:19
|
show 1 more comment
2
No. Not PCA. Not again. This won't work. You have only 1 observation and almost 2k features. Impossible. Please see this canonical answer as to why this is pertinently impossible.
– Adriaan
Jan 29 '16 at 11:52
@Adriaan Thanks man. I just realized what I should really do. I should loop through each frame of the video and form aNx1944
HOG matrix and then apply PCA. Is that right?
– Abdul Fatir
Jan 29 '16 at 12:14
Possibly, ifN > 1e4
, see my answer I linked on why you need some 5 times more observations than features.
– Adriaan
Jan 29 '16 at 12:17
Yes, can you write everything you mentioned as an answer so that I can mark it as an answer.
– Abdul Fatir
Jan 29 '16 at 12:19
what features are you trying to extract and what is your ultimate goal? looping through the video and applying PCA to the final feature matrix will not necessarily give you what you want
– GameOfThrows
Jan 29 '16 at 12:19
2
2
No. Not PCA. Not again. This won't work. You have only 1 observation and almost 2k features. Impossible. Please see this canonical answer as to why this is pertinently impossible.
– Adriaan
Jan 29 '16 at 11:52
No. Not PCA. Not again. This won't work. You have only 1 observation and almost 2k features. Impossible. Please see this canonical answer as to why this is pertinently impossible.
– Adriaan
Jan 29 '16 at 11:52
@Adriaan Thanks man. I just realized what I should really do. I should loop through each frame of the video and form a
Nx1944
HOG matrix and then apply PCA. Is that right?– Abdul Fatir
Jan 29 '16 at 12:14
@Adriaan Thanks man. I just realized what I should really do. I should loop through each frame of the video and form a
Nx1944
HOG matrix and then apply PCA. Is that right?– Abdul Fatir
Jan 29 '16 at 12:14
Possibly, if
N > 1e4
, see my answer I linked on why you need some 5 times more observations than features.– Adriaan
Jan 29 '16 at 12:17
Possibly, if
N > 1e4
, see my answer I linked on why you need some 5 times more observations than features.– Adriaan
Jan 29 '16 at 12:17
Yes, can you write everything you mentioned as an answer so that I can mark it as an answer.
– Abdul Fatir
Jan 29 '16 at 12:19
Yes, can you write everything you mentioned as an answer so that I can mark it as an answer.
– Abdul Fatir
Jan 29 '16 at 12:19
what features are you trying to extract and what is your ultimate goal? looping through the video and applying PCA to the final feature matrix will not necessarily give you what you want
– GameOfThrows
Jan 29 '16 at 12:19
what features are you trying to extract and what is your ultimate goal? looping through the video and applying PCA to the final feature matrix will not necessarily give you what you want
– GameOfThrows
Jan 29 '16 at 12:19
|
show 1 more comment
1 Answer
1
active
oldest
votes
You can't do PCA on this, since you have more features than your single observation. Get more observations, some 10,000 presumably, and you can do PCA.
See PCA in matlab selecting top n components for the more detailed and mathematical explanation as to why this is the case.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f35083533%2fdimensionality-reduction-in-hog-feature-vector%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can't do PCA on this, since you have more features than your single observation. Get more observations, some 10,000 presumably, and you can do PCA.
See PCA in matlab selecting top n components for the more detailed and mathematical explanation as to why this is the case.
add a comment |
You can't do PCA on this, since you have more features than your single observation. Get more observations, some 10,000 presumably, and you can do PCA.
See PCA in matlab selecting top n components for the more detailed and mathematical explanation as to why this is the case.
add a comment |
You can't do PCA on this, since you have more features than your single observation. Get more observations, some 10,000 presumably, and you can do PCA.
See PCA in matlab selecting top n components for the more detailed and mathematical explanation as to why this is the case.
You can't do PCA on this, since you have more features than your single observation. Get more observations, some 10,000 presumably, and you can do PCA.
See PCA in matlab selecting top n components for the more detailed and mathematical explanation as to why this is the case.
edited May 23 '17 at 12:32
Community♦
11
11
answered Jan 29 '16 at 12:20
AdriaanAdriaan
12.5k63160
12.5k63160
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f35083533%2fdimensionality-reduction-in-hog-feature-vector%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
No. Not PCA. Not again. This won't work. You have only 1 observation and almost 2k features. Impossible. Please see this canonical answer as to why this is pertinently impossible.
– Adriaan
Jan 29 '16 at 11:52
@Adriaan Thanks man. I just realized what I should really do. I should loop through each frame of the video and form a
Nx1944
HOG matrix and then apply PCA. Is that right?– Abdul Fatir
Jan 29 '16 at 12:14
Possibly, if
N > 1e4
, see my answer I linked on why you need some 5 times more observations than features.– Adriaan
Jan 29 '16 at 12:17
Yes, can you write everything you mentioned as an answer so that I can mark it as an answer.
– Abdul Fatir
Jan 29 '16 at 12:19
what features are you trying to extract and what is your ultimate goal? looping through the video and applying PCA to the final feature matrix will not necessarily give you what you want
– GameOfThrows
Jan 29 '16 at 12:19