tag:blogger.com,1999:blog-8995455167205656082.post4298249020202963631..comments2024-01-24T00:20:26.103-08:00Comments on MareArts Computer Vision Study.: Example source code of extract HOG feature from images, save descriptor values to xml file, using opencv (using HOGDescriptor )Unknownnoreply@blogger.comBlogger26125tag:blogger.com,1999:blog-8995455167205656082.post-88679013061120678232018-04-22T20:13:54.269-07:002018-04-22T20:13:54.269-07:00Hopefully anyone can help me about this, I really ...Hopefully anyone can help me about this, I really need your help :)Anonymoushttps://www.blogger.com/profile/08048654414277681494noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-2112241504600393912018-04-15T07:00:24.276-07:002018-04-15T07:00:24.276-07:00Thank you for your reply, I'm really sorry I c...Thank you for your reply, I'm really sorry I can't reply faster, there are no change of the images except before calculating HOG, like u did above. This is my code, can you check it where I did wrong, Thank you for your response.<br /><br />int main(int argc, const char* argv[])<br />{<br /> string folder = "D:\\Project\\TA\\Data_Trainer\\Clip_Images\\Positif Training1\\pisang\\"; // folder input <br /> string suffix = ".png";<br /> int counter = 0;<br /> Mat img, img_gray;<br /> Mat img1, img2;<br /><br /> for (int i = 0; i < 10; i++) {<br /> stringstream ss;<br /> cout << "check point 0 " << endl;<br /> ss << setw(4) << setfill('0') << counter; // 0000, 0001, 0002, etc...<br /> //ss << counter; // 0000, 0001, 0002, etc...<br /> string number = ss.str();<br /><br /> string name = folder + number + suffix;<br /> img = imread(name);<br /> if (img.empty()) cout << "No image Loaded" << endl;<br /> else cout << "image " << counter << " Loaded Successfully" << endl;<br /> cout << name << endl; <br /><br /> //Parameter<br /> setWidth = 32, setHeight = 32;<br /><br /> //resizing<br /> resize(img, img, Size(setWidth, setHeight)); //Size(64,48) ); //Size(32*2,16*2)); //Size(80,72) );<br /><br /> //GrayScaling<br /> cvtColor(img, img_gray, CV_RGB2GRAY); //gray<br /><br /> //extract feature<br /> HOGDescriptor hog(Size(setWidth, setHeight), Size(8, 8), Size(4, 4), Size(4, 4), 9);<br /> // Size(32,16), //winSize<br /> // Size(8,8), //blocksize<br /> // Size(4,4), //blockStride,<br /> // Size(4,4), //cellSize,<br /> // 9, //nbins,<br /> vector< float> descriptorsValues;<br /> vector< Point> locations;<br /><br /> hog.compute(img_gray, descriptorsValues, Size(0, 0), Size(0, 0), locations);<br /> // img, descriptor, winStride, Padding, Location<br /><br /> if (descriptorsValues.empty()) cout << "descriptorValues empty" << endl;<br /> if (locations.empty()) cout << "location empty" << endl;<br /><br /> v_descriptorsValues.push_back(descriptorsValues);<br /> v_locations.push_back(locations);<br /><br /> printf("row =%d ", v_descriptorsValues.size());<br /> printf(" ,col =%d\n", v_descriptorsValues[0].size());<br /> <br /> //show image<br /> //imshow("origin", img);<br /> waitKey(3); <br /> <br /> cout << "loop: " << counter << endl;<br /> counter++;<br /> //img.release();<br /> //img_gray.release();<br /> cout << "check point 1" << endl;<br /> descriptorsValues.clear();<br /> locations.clear();<br /> <br /> }Anonymoushttps://www.blogger.com/profile/08048654414277681494noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-53193316582816532332018-04-11T17:55:56.310-07:002018-04-11T17:55:56.310-07:00Hi, The first loop succeeded, but does it fail fro...Hi, The first loop succeeded, but does it fail from the second?<br />Does the image size change?<br />Thank you.marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-17747741565252020072018-04-11T01:15:35.191-07:002018-04-11T01:15:35.191-07:00Hy Mister, I'm new in HOG Feature, I want to a...Hy Mister, I'm new in HOG Feature, I want to ask, when i used hog.compute in a loop like u do, it always crash and throwing an exception, it said "Invalid_parameter:<br /> _SCL_SECURE_INVALID_ARGUMENT_NO_ASSERT;"<br />it only compute 1 image then always crashing in the next image and throw that exception (it can't looping). Please help me solve my problem here. ThanksAnonymoushttps://www.blogger.com/profile/08048654414277681494noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-42882843308574611242017-04-18T02:07:12.075-07:002017-04-18T02:07:12.075-07:00thank you #JH Kim for your help.
thank you #JH Kim for your help.<br />Anonymoushttps://www.blogger.com/profile/09646114147699960049noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-27157888819649398392017-04-17T22:22:26.901-07:002017-04-17T22:22:26.901-07:00your meaning is, you want to create your own hog f...your meaning is, you want to create your own hog feature right?<br />and training by svm.<br />if that case, this post will help<br /><br />http://study.marearts.com/2016/01/svm-hog-learning-and-detection-methods.html<br /><br />Thanks for your interesting.<br /><br />marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-76024544144191298872017-04-17T03:46:06.899-07:002017-04-17T03:46:06.899-07:00how can i train my HOG descriptor to detect partia...how can i train my HOG descriptor to detect partial parts of the human bodyAnonymoushttps://www.blogger.com/profile/09646114147699960049noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-31877707879791779732017-03-28T17:22:18.158-07:002017-03-28T17:22:18.158-07:00네 감사합니다. hog 특징 생성할때, 파라미터가 좀 잘 못 된것 같은데요.. 좀더 자세히...네 감사합니다. hog 특징 생성할때, 파라미터가 좀 잘 못 된것 같은데요.. 좀더 자세히 알아보려면 저도 시간이 필요하겠네요.. 저도 hog 안한지 오래되어서 기억이 가물가물하거든요.. ^^<br />지금 업무도 많고 해서.. 제가 빨리 답변 못드리는 점 죄송합니다.<br />marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-62828559793362433512017-03-27T07:57:31.198-07:002017-03-27T07:57:31.198-07:00안녕하세요. 궁금한점이 있어 질문드립니다.
hog.compute 함수를 써서 제가 원하는...안녕하세요. 궁금한점이 있어 질문드립니다. <br />hog.compute 함수를 써서 제가 원하는 객체의 hog 특징을 뽑고 학습하는데 잘 이용하고 있었는데, 문제가 생겼습니다. <br />좀더 자세한 feature 를 뽑고 싶어서 크게 뽑고 싶어서 다음과 같이 코드를 짯는데요. 저의 이론상으로는 확실한데 뭐가 문제인지 모르겠네요. compute 함수가 window 사이즈의 limitation 을 걸어논건지.. 아니면 제가 정말 잘못 이해하고 있는건지 모르겠어서 Mare님의 도움을 얻을수 없을까 싶어 이렇게 질문을 드립니다. <br /><br />resize(mat_input, mat_input, Size(160,100));<br />cvtColor(mat_input, mat_gray, CV_RGB2GRAY);<br />이미지 사이즈는 위와 160,100 으로 설정하였습니다.<br />//extract feature<br />HOGDescriptor hogDescriptor(Size(160, 100), Size(40, 40), Size(20, 20), Size(20, 20), 9);<br />vector< float> vf_DescriptorsValues;<br />vector< Point> v_LocationPoint ;<br /> <br />cv::Size winStride(0, 0);<br />cv::Size winPadding(0, 0);<br />hogDescriptor.compute(mat_gray, vf_DescriptorsValues, winStride, winPadding, v_LocationPoint);<br /><br />제가 생각하기로는 다음과 같이 설정을 했을 경우, 1008 feature dimension이 나올것이라 예상하는데, <br />128,80 까지의 윈도우 까지는 허용을 하였으나, 그 이상으로는 계산이 되질 않습니다. <br /><br />제가 설정한 코드의 문제가 있는것인가요? 확인 부탁드립니다ㅠㅠ<br /><br />문제가 있는것이면, 저는 320,200정도의 이미지에서 hog feature를 뽑고 싶은데, 혹시 큰크기의 영상에서 뽑는 방법을 알고 계신지 여쭤봐도 될까요? Anonymoushttps://www.blogger.com/profile/17951045913347969009noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-57116691931233374462017-03-13T20:20:04.014-07:002017-03-13T20:20:04.014-07:00"./images/upperbody"; 는 폴더가 맞고요
sprintf_..."./images/upperbody"; 는 폴더가 맞고요<br />sprintf_s(FullFileName, "%s%d.png", FirstFileName, i+1);<br /><br />이 문장에 의해서 파일명이 만들어 집니다.<br />다수의 파일이 순서되로 정리 되어 있습니다.<br />marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-14672935317134136302017-03-13T20:18:54.306-07:002017-03-13T20:18:54.306-07:00지금 소스는 다수의 이미지를 for로 루프돌면서 hough 특징을 추출하고 있고요
영상 사...지금 소스는 다수의 이미지를 for로 루프돌면서 hough 특징을 추출하고 있고요<br />영상 사이즈를 같게 하기 위해서 루프안에서 resize를 해주고 있습니다.<br />hough 특징은 똑같은 사이즈로 뽑고 그것을 학습할때 사용합니다.<br />감사합니다.marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-44696061984384355442017-03-13T20:16:45.486-07:002017-03-13T20:16:45.486-07:00Thank you very much.
Thank you very much.<br />marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-67518832617709461072017-03-13T20:16:21.601-07:002017-03-13T20:16:21.601-07:00Em.. actually I don't know android environment...Em.. actually I don't know android environment.<br />but even though android, that can load xml file, may be.<br />so first make xml file on pc, and after load xml on android.<br />Thank you.marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-87630881596182156822017-03-13T20:14:28.158-07:002017-03-13T20:14:28.158-07:00sorry, do you meet opencv library link error?
Do y...sorry, do you meet opencv library link error?<br />Do you use 2.xx version like me?<br />Thank you.marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-44804093012920088092017-03-13T20:12:54.717-07:002017-03-13T20:12:54.717-07:00말씀하신 방법이 맞는 것 같습니다.
코드 라인이 보기 힘들어서 gist로 다시 올렸습니다....말씀하신 방법이 맞는 것 같습니다.<br />코드 라인이 보기 힘들어서 gist로 다시 올렸습니다.<br />감사합니다.marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-22407474086809707822017-03-13T19:46:30.090-07:002017-03-13T19:46:30.090-07:00안녕하세요.
궁금한점이 있어서 질문드립니다.
마지막에 hogXml.release();를 f...안녕하세요.<br />궁금한점이 있어서 질문드립니다.<br />마지막에 hogXml.release();를 for문 안에 넣으면 저장할 공간이 없다는 error 메세지가 뜨는데 <br />for문 밖으로 꺼내서 write를 다 끝낸 후에 release를 하면 안되는건지 궁금합니다.<br />그리고 해본 결과 시간이 오래 걸리던데 오래 걸리는게 맞는건지...궁금합니다.<br />아직 배우고 있는 단계여서 죄송합니다.Anonymoushttps://www.blogger.com/profile/13541209773980114028noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-74914422547840797492016-12-09T23:21:06.734-08:002016-12-09T23:21:06.734-08:00Library Link Error!! Do You Kindly Share Complete ...Library Link Error!! Do You Kindly Share Complete Package Of Source CodeAnonymoushttps://www.blogger.com/profile/16358199814800293396noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-53948862330493588382016-10-06T19:23:18.961-07:002016-10-06T19:23:18.961-07:00Hi, I wonder if there is a version of this code th...Hi, I wonder if there is a version of this code that can be implemented in Android studio?Jasonhttps://www.blogger.com/profile/06886686168179317268noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-39663999089705118192016-06-24T13:09:03.504-07:002016-06-24T13:09:03.504-07:00This comment has been removed by the author.Anonymoushttps://www.blogger.com/profile/13986070604556671878noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-54620326868681976192016-05-06T10:54:27.665-07:002016-05-06T10:54:27.665-07:00thx for this example
thx for this example<br />Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-46919357966207269912016-03-27T19:18:49.546-07:002016-03-27T19:18:49.546-07:00See detail in for loop.
How to use FirstFileName c...See detail in for loop.<br />How to use FirstFileName char(line 47)<br />And Why code use resize function(line 55)<br />Increase your code reading skill.<br />Cheer up!marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-84688569437398243082016-03-27T05:49:00.370-07:002016-03-27T05:49:00.370-07:00다수의 이미지가 있는 폴더여야하는지.. .xml형식의 자료여야하는지..
또한 이미지 사이즈...다수의 이미지가 있는 폴더여야하는지.. .xml형식의 자료여야하는지..<br />또한 이미지 사이즈도 상관있는건지... 궁금합니다. <br />초보가 이러한 질문해서 죄송합니다.Anonymoushttps://www.blogger.com/profile/15531508577307640513noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-79809089550202615222016-03-27T05:46:29.086-07:002016-03-27T05:46:29.086-07:00안녕하세요.
궁금한점이 생겨 이렇게 질문 드립니다.
위에 보면 ="./image...안녕하세요. <br />궁금한점이 생겨 이렇게 질문 드립니다.<br />위에 보면 ="./images/upperbody"; 부분이 데이터셋위치 정보같은데<br />폴더인가요???<br />코딩시 계속 처리되지 않은 오류가 발생한다고하네요<br />답답한마음에 여쭤봅니다Anonymoushttps://www.blogger.com/profile/15531508577307640513noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-8221583579690890782014-11-20T17:59:16.869-08:002014-11-20T17:59:16.869-08:00You also should make negative.xml file.
The negat...You also should make negative.xml file. <br />The negative image should not contain positive image ex) face, human body...<br /><br />positive.xml have to make similar images.<br />refer to this weg page" http://feelmare.blogspot.kr/search/label/Data"<br /><br />negative.xml was made by natural images not include positive images.<br />and that is good way using background image of actual testing. then you can avoid false positive detection of you predicted.<br />->실제 적용할 곳의 배경 이미지를 사용하는 것이 좋습니다. 그러면 오검출 예상 부분을 없앨 수 있겠죠..<br /><br />thank you.marehttps://www.blogger.com/profile/13020968187164236752noreply@blogger.comtag:blogger.com,1999:blog-8995455167205656082.post-13605223071613204902014-11-20T04:10:59.935-08:002014-11-20T04:10:59.935-08:00안녕하세요"" 블로그를 참조해서 Positive, Negative da...안녕하세요"" 블로그를 참조해서 Positive, Negative data를 만들고 SVM tratining을 해보려고 하고있습니다.<br />제공해주신 코드로 Positive.xml은 생성해보았는데, Negative.xml도 마찬가지로 하면 되는건지 궁금해서 질문드립니다. 아니면 Negative.xml은 이미지의 이름만 적어주면 되는건가요??<br />그리고, 사람을 검출하고자 한다면 Positive.xml 생성시에 사용되는 이미지는 이미지에서 사람만 잘라서 사용해야 하는건가요?<br />Negative 이미지는 사람이 없는 이미지를 그대로 사용해야하구요?<br /><br />두서없이 질문드려 죄송합니다;;Anonymoushttps://www.blogger.com/profile/07506188028371436604noreply@blogger.com