{
  "id": 333,
  "title": "Benchmark",
  "url": "/competitions/WIC2011/discussion/333",
  "author_name": "",
  "post_date": "2011-03-13T17:45:09Z",
  "votes": null,
  "comment_count": 2,
  "views": 2936,
  "content": "Dear participants,<br><br>Below is the c++ code used to generate the benchmark.<br>Comments are welcome.<br><br><br>#include \"stdafx.h\"<br>#include &lt;fstream&gt;<br>#include &lt;conio.h&gt;<br>#include &lt;list&gt;<br>#include &lt;iostream&gt;<br>#include &lt;sstream&gt;<br>#include &lt;vector&gt;<br>#include &lt;string&gt;<br>#include &lt;math.h&gt;<br><br><br><br>using namespace std;<br>//class handling the provided features<br>class document_features<br>{<br>public:<br>&nbsp;&nbsp;&nbsp; document_features()<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ThicknessLengthsCircleHist30=new double[30];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Distribution10x10_100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDirectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateDirectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; nbbranches_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; LengthsOfBranchesHist_10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; numberOfPixels1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XFilledProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YFilledProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Barycenter2=new double[2];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; DirectionPerpendicular5Hist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturePerpendicular5Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; luminanceHist256=new double[256];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli5Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli5Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli10Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli10Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli15Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli15Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli20Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli20Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_4=new double[4];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_8=new double[8];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order2_64=new double[64];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order2_16=new double[16];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order3_64=new double[64];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order3_512=new double[512];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order4_256=new double[256];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order4_4096=new double[4096];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfConnectedComponents_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfHoles_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_5=new double[5];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_9=new double[9];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_15=new double[15];<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; double*ThicknessLengthsCircleHist30,*XProjectionHist10,*YProjectionHist10,*Distribution10x10_100,*tortuosityHist10,*tortuosityDirectionHist10,*tortuosityDerivateHist10,*tortuosityDerivateDirectionHist10,*nbbranches_1,*LengthsOfBranchesHist_10,*numberOfPixels1,*XFilledProjectionHist10,*YFilledProjectionHist10,*Barycenter2,*DirectionPerpendicular5Hist10,*CurvaturePerpendicular5Hist100,*luminanceHist256,*CurvatureAli5Hist100,*CurvaturesDerivateAli5Hist100,*CurvatureAli10Hist100,*CurvaturesDerivateAli10Hist100,*CurvatureAli15Hist100,*CurvaturesDerivateAli15Hist100,*CurvatureAli20Hist100,*CurvaturesDerivateAli20Hist100,*chaincodeHist_4,*chaincodeHist_8,*chaincode8order2_64,*chaincode4order2_16,*chaincode4order3_64,*chaincode8order3_512,*chaincode4order4_256,*chaincode8order4_4096,*NumberOfConnectedComponents_1,*NumberOfHoles_1,*Fourier_1,*Fourier_5,*Fourier_9,*Fourier_15;<br>&nbsp;&nbsp;&nbsp; double SpatialMoment00,SpatialMoment10,SpatialMoment20,SpatialMoment30,SpatialMoment01,SpatialMoment11,SpatialMoment21,SpatialMoment02,SpatialMoment12,SpatialMoment03,CentralMoment00,CentralMoment10,CentralMoment20,CentralMoment30,CentralMoment01,CentralMoment11,CentralMoment21,CentralMoment02,CentralMoment12,CentralMoment03,NormalizedCentralMoment00,NormalizedCentralMoment10,NormalizedCentralMoment20,NormalizedCentralMoment30,NormalizedCentralMoment01,NormalizedCentralMoment11,NormalizedCentralMoment21,NormalizedCentralMoment02,NormalizedCentralMoment12,NormalizedCentralMoment03,HuMoment1,HuMoment2,HuMoment3,HuMoment4,HuMoment5,HuMoment6,HuMoment7;<br>&nbsp;&nbsp;&nbsp; int writer_id;<br>};<br><br><br>void main()<br>{<br>&nbsp;&nbsp;&nbsp; //training phase<br>&nbsp;&nbsp;&nbsp; std::ifstream data(\"train.csv\");<br>&nbsp;&nbsp;&nbsp; int linenum=0;<br>&nbsp;&nbsp;&nbsp; string line;<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; document_features**my_document_features=new document_features*[108];<br>&nbsp;&nbsp;&nbsp; string item;//=new char[4];<br><br>&nbsp;&nbsp;&nbsp; //reading the training documents<br>&nbsp;&nbsp;&nbsp; while (getline (data, line))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cout &lt;&lt; \"\\nLine #\" &lt;&lt; linenum &lt;&lt; \":\" &lt;&lt; endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; istringstream linestream(line);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(linenum&gt;0)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; int row_index=linenum-1;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]=new document_features();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;writer_id=atoi(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NumberOfConnectedComponents_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NumberOfHoles_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment1=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment2=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment3=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment4=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment5=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment6=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment7=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;XProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;YProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;XFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;YFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Distribution10x10_100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Barycenter2[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Barycenter2[1]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;numberOfPixels1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_5[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_9[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_15[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;nbbranches_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;LengthsOfBranchesHist_10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;ThicknessLengthsCircleHist30[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityDerivateHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityDerivateDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;DirectionPerpendicular5Hist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturePerpendicular5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;luminanceHist256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincodeHist_4[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincodeHist_8[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode8order2_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode4order2_16[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode4order3_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode8order3_512[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode4order4_256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode8order4_4096[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; linenum++;<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; //difference between features of all documents in the training set<br>&nbsp;&nbsp;&nbsp; std::ofstream differences(\"train_differences.csv\");<br>&nbsp;&nbsp;&nbsp; differences&lt;&lt;\"SameWriter,NumberOfConnectedComponents_1,NumberOfHoles_1,SpatialMoment00,SpatialMoment10,SpatialMoment20,SpatialMoment30,SpatialMoment01,SpatialMoment11,SpatialMoment21,SpatialMoment02,SpatialMoment12,SpatialMoment03,CentralMoment00,CentralMoment10,CentralMoment20,CentralMoment30,CentralMoment01,CentralMoment11,CentralMoment21,CentralMoment02,CentralMoment12,CentralMoment03,NormalizedCentralMoment00,NormalizedCentralMoment10,NormalizedCentralMoment20,NormalizedCentralMoment30,NormalizedCentralMoment01,NormalizedCentralMoment11,NormalizedCentralMoment21,NormalizedCentralMoment02,NormalizedCentralMoment12,NormalizedCentralMoment03,HuMoment1,HuMoment2,HuMoment3,HuMoment4,HuMoment5,HuMoment6,HuMoment7,XProjectionHist10,YProjectionHist10,XFilledProjectionHist10,YFilledProjectionHist10,Distribution10x10_100,Barycenter2,numberOfPixels1,Fourier_1,Fourier_5,Fourier_9,Fourier_15,nbbranches_1,LengthsOfBranchesHist_10,ThicknessLengthsCircleHist30,tortuosityHist10,tortuosityDirectionHist10,tortuosityDerivateHist10,tortuosityDerivateDirectionHist10,DirectionPerpendicular5Hist10,CurvaturePerpendicular5Hist100,luminanceHist256,CurvatureAli5Hist100,CurvaturesDerivateAli5Hist100,CurvatureAli10Hist100,CurvaturesDerivateAli10Hist100,CurvatureAli15Hist100,CurvaturesDerivateAli15Hist100,CurvatureAli20Hist100,CurvaturesDerivateAli20Hist100,chaincodeHist_4,chaincodeHist_8,chaincode8order2_64,chaincode4order2_16,chaincode4order3_64,chaincode8order3_512,chaincode4order4_256,chaincode8order4_4096\\n\";<br>&nbsp;&nbsp;&nbsp; //comparing each pair of documents<br>&nbsp;&nbsp;&nbsp; for(int document_index1=0;document_index1&lt;107;document_index1++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int document_index2=document_index1+1;document_index2&lt;108;document_index2++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double NumberOfConnectedComponents_1=0,NumberOfHoles_1=0,SpatialMoment00=0,SpatialMoment10=0,SpatialMoment20=0,SpatialMoment30=0,SpatialMoment01=0,SpatialMoment11=0,SpatialMoment21=0,SpatialMoment02=0,SpatialMoment12=0,SpatialMoment03=0,CentralMoment00=0,CentralMoment10=0,CentralMoment20=0,CentralMoment30=0,CentralMoment01=0,CentralMoment11=0,CentralMoment21=0,CentralMoment02=0,CentralMoment12=0,CentralMoment03=0,NormalizedCentralMoment00=0,NormalizedCentralMoment10=0,NormalizedCentralMoment20=0,NormalizedCentralMoment30=0,NormalizedCentralMoment01=0,NormalizedCentralMoment11=0,NormalizedCentralMoment21=0,NormalizedCentralMoment02=0,NormalizedCentralMoment12=0,NormalizedCentralMoment03=0,HuMoment1=0,HuMoment2=0,HuMoment3=0,HuMoment4=0,HuMoment5=0,HuMoment6=0,HuMoment7=0,ThicknessLengthsCircleHist30=0,XProjectionHist10=0,YProjectionHist10=0,Distribution10x10_100=0,tortuosityHist10=0,tortuosityDirectionHist10=0,tortuosityDerivateHist10=0,tortuosityDerivateDirectionHist10=0,nbbranches_1=0,LengthsOfBranchesHist_10=0,numberOfPixels1=0,XFilledProjectionHist10=0,YFilledProjectionHist10=0,Barycenter2=0,DirectionPerpendicular5Hist10=0,CurvaturePerpendicular5Hist100=0,luminanceHist256=0,CurvatureAli5Hist100=0,CurvaturesDerivateAli5Hist100=0,CurvatureAli10Hist100=0,CurvaturesDerivateAli10Hist100=0,CurvatureAli15Hist100=0,CurvaturesDerivateAli15Hist100=0,CurvatureAli20Hist100=0,CurvaturesDerivateAli20Hist100=0,chaincodeHist_4=0,chaincodeHist_8=0,chaincode8order2_64=0,chaincode4order2_16=0,chaincode4order3_64=0,chaincode8order3_512=0,chaincode4order4_256=0,chaincode8order4_4096=0,Fourier_1=0,Fourier_5=0,Fourier_9=0,Fourier_15=0;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfConnectedComponents_1+=fabs(my_document_features[document_index1]-&gt;NumberOfConnectedComponents_1[0]-my_document_features[document_index2]-&gt;NumberOfConnectedComponents_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfHoles_1+=fabs(my_document_features[document_index1]-&gt;NumberOfHoles_1[0]-my_document_features[document_index2]-&gt;NumberOfHoles_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment00+=fabs(my_document_features[document_index1]-&gt;SpatialMoment00-my_document_features[document_index2]-&gt;SpatialMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment10+=fabs(my_document_features[document_index1]-&gt;SpatialMoment10-my_document_features[document_index2]-&gt;SpatialMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment20+=fabs(my_document_features[document_index1]-&gt;SpatialMoment20-my_document_features[document_index2]-&gt;SpatialMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment30+=fabs(my_document_features[document_index1]-&gt;SpatialMoment30-my_document_features[document_index2]-&gt;SpatialMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment01+=fabs(my_document_features[document_index1]-&gt;SpatialMoment01-my_document_features[document_index2]-&gt;SpatialMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment11+=fabs(my_document_features[document_index1]-&gt;SpatialMoment11-my_document_features[document_index2]-&gt;SpatialMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment21+=fabs(my_document_features[document_index1]-&gt;SpatialMoment21-my_document_features[document_index2]-&gt;SpatialMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment02+=fabs(my_document_features[document_index1]-&gt;SpatialMoment02-my_document_features[document_index2]-&gt;SpatialMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment12+=fabs(my_document_features[document_index1]-&gt;SpatialMoment12-my_document_features[document_index2]-&gt;SpatialMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment03+=fabs(my_document_features[document_index1]-&gt;SpatialMoment03-my_document_features[document_index2]-&gt;SpatialMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment00+=fabs(my_document_features[document_index1]-&gt;CentralMoment00-my_document_features[document_index2]-&gt;CentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment10+=fabs(my_document_features[document_index1]-&gt;CentralMoment10-my_document_features[document_index2]-&gt;CentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment20+=fabs(my_document_features[document_index1]-&gt;CentralMoment20-my_document_features[document_index2]-&gt;CentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment30+=fabs(my_document_features[document_index1]-&gt;CentralMoment30-my_document_features[document_index2]-&gt;CentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment01+=fabs(my_document_features[document_index1]-&gt;CentralMoment01-my_document_features[document_index2]-&gt;CentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment11+=fabs(my_document_features[document_index1]-&gt;CentralMoment11-my_document_features[document_index2]-&gt;CentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment21+=fabs(my_document_features[document_index1]-&gt;CentralMoment21-my_document_features[document_index2]-&gt;CentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment02+=fabs(my_document_features[document_index1]-&gt;CentralMoment02-my_document_features[document_index2]-&gt;CentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment12+=fabs(my_document_features[document_index1]-&gt;CentralMoment12-my_document_features[document_index2]-&gt;CentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment03+=fabs(my_document_features[document_index1]-&gt;CentralMoment03-my_document_features[document_index2]-&gt;CentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment00+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment00-my_document_features[document_index2]-&gt;NormalizedCentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment10+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment10-my_document_features[document_index2]-&gt;NormalizedCentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment20+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment20-my_document_features[document_index2]-&gt;NormalizedCentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment30+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment30-my_document_features[document_index2]-&gt;NormalizedCentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment01+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment01-my_document_features[document_index2]-&gt;NormalizedCentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment11+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment11-my_document_features[document_index2]-&gt;NormalizedCentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment21+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment21-my_document_features[document_index2]-&gt;NormalizedCentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment02+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment02-my_document_features[document_index2]-&gt;NormalizedCentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment12+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment12-my_document_features[document_index2]-&gt;NormalizedCentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment03+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment03-my_document_features[document_index2]-&gt;NormalizedCentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment1+=fabs(my_document_features[document_index1]-&gt;HuMoment1-my_document_features[document_index2]-&gt;HuMoment1);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment2+=fabs(my_document_features[document_index1]-&gt;HuMoment2-my_document_features[document_index2]-&gt;HuMoment2);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment3+=fabs(my_document_features[document_index1]-&gt;HuMoment3-my_document_features[document_index2]-&gt;HuMoment3);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment4+=fabs(my_document_features[document_index1]-&gt;HuMoment4-my_document_features[document_index2]-&gt;HuMoment4);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment5+=fabs(my_document_features[document_index1]-&gt;HuMoment5-my_document_features[document_index2]-&gt;HuMoment5);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment6+=fabs(my_document_features[document_index1]-&gt;HuMoment6-my_document_features[document_index2]-&gt;HuMoment6);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment7+=fabs(my_document_features[document_index1]-&gt;HuMoment7-my_document_features[document_index2]-&gt;HuMoment7);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XProjectionHist10+=fabs(my_document_features[document_index1]-&gt;XProjectionHist10[x]-my_document_features[document_index2]-&gt;XProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YProjectionHist10+=fabs(my_document_features[document_index1]-&gt;YProjectionHist10[x]-my_document_features[document_index2]-&gt;YProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XFilledProjectionHist10+=fabs(my_document_features[document_index1]-&gt;XFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;XFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YFilledProjectionHist10+=fabs(my_document_features[document_index1]-&gt;YFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;YFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Distribution10x10_100+=fabs(my_document_features[document_index1]-&gt;Distribution10x10_100[x]-my_document_features[document_index2]-&gt;Distribution10x10_100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;2;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Barycenter2+=fabs(my_document_features[document_index1]-&gt;Barycenter2[x]-my_document_features[document_index2]-&gt;Barycenter2[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; numberOfPixels1+=fabs(my_document_features[document_index1]-&gt;numberOfPixels1[0]-my_document_features[document_index2]-&gt;numberOfPixels1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;1;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_1+=fabs(my_document_features[document_index1]-&gt;Fourier_1[x]-my_document_features[document_index2]-&gt;Fourier_1[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_5+=fabs(my_document_features[document_index1]-&gt;Fourier_5[x]-my_document_features[document_index2]-&gt;Fourier_5[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_9+=fabs(my_document_features[document_index1]-&gt;Fourier_9[x]-my_document_features[document_index2]-&gt;Fourier_9[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_15+=fabs(my_document_features[document_index1]-&gt;Fourier_15[x]-my_document_features[document_index2]-&gt;Fourier_15[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; nbbranches_1+=fabs(my_document_features[document_index1]-&gt;nbbranches_1[0]-my_document_features[document_index2]-&gt;nbbranches_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; LengthsOfBranchesHist_10+=fabs(my_document_features[document_index1]-&gt;LengthsOfBranchesHist_10[x]-my_document_features[document_index2]-&gt;LengthsOfBranchesHist_10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ThicknessLengthsCircleHist30+=fabs(my_document_features[document_index1]-&gt;ThicknessLengthsCircleHist30[x]-my_document_features[document_index2]-&gt;ThicknessLengthsCircleHist30[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityHist10[x]-my_document_features[document_index2]-&gt;tortuosityHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDirectionHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityDerivateHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateDirectionHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityDerivateDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; DirectionPerpendicular5Hist10+=fabs(my_document_features[document_index1]-&gt;DirectionPerpendicular5Hist10[x]-my_document_features[document_index2]-&gt;DirectionPerpendicular5Hist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturePerpendicular5Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturePerpendicular5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturePerpendicular5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; luminanceHist256+=fabs(my_document_features[document_index1]-&gt;luminanceHist256[x]-my_document_features[document_index2]-&gt;luminanceHist256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli5Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli5Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli10Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli10Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli15Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli15Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli20Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli20Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_4+=fabs(my_document_features[document_index1]-&gt;chaincodeHist_4[x]-my_document_features[document_index2]-&gt;chaincodeHist_4[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_8+=fabs(my_document_features[document_index1]-&gt;chaincodeHist_8[x]-my_document_features[document_index2]-&gt;chaincodeHist_8[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order2_64+=fabs(my_document_features[document_index1]-&gt;chaincode8order2_64[x]-my_document_features[document_index2]-&gt;chaincode8order2_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order2_16+=fabs(my_document_features[document_index1]-&gt;chaincode4order2_16[x]-my_document_features[document_index2]-&gt;chaincode4order2_16[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order3_64+=fabs(my_document_features[document_index1]-&gt;chaincode4order3_64[x]-my_document_features[document_index2]-&gt;chaincode4order3_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order3_512+=fabs(my_document_features[document_index1]-&gt;chaincode8order3_512[x]-my_document_features[document_index2]-&gt;chaincode8order3_512[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order4_256+=fabs(my_document_features[document_index1]-&gt;chaincode4order4_256[x]-my_document_features[document_index2]-&gt;chaincode4order4_256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order4_4096+=fabs(my_document_features[document_index1]-&gt;chaincode8order4_4096[x]-my_document_features[document_index2]-&gt;chaincode8order4_4096[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(my_document_features[document_index1]-&gt;writer_id==my_document_features[document_index2]-&gt;writer_id)differences&lt;&lt;\"1,\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else differences&lt;&lt;\"0,\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; differences&lt;&lt;NumberOfConnectedComponents_1&lt;&lt;\",\"&lt;&lt;NumberOfHoles_1&lt;&lt;\",\"&lt;&lt;SpatialMoment00&lt;&lt;\",\"&lt;&lt;SpatialMoment10&lt;&lt;\",\"&lt;&lt;SpatialMoment20&lt;&lt;\",\"&lt;&lt;SpatialMoment30&lt;&lt;\",\"&lt;&lt;SpatialMoment01&lt;&lt;\",\"&lt;&lt;SpatialMoment11&lt;&lt;\",\"&lt;&lt;SpatialMoment21&lt;&lt;\",\"&lt;&lt;SpatialMoment02&lt;&lt;\",\"&lt;&lt;SpatialMoment12&lt;&lt;\",\"&lt;&lt;SpatialMoment03&lt;&lt;\",\"&lt;&lt;CentralMoment00&lt;&lt;\",\"&lt;&lt;CentralMoment10&lt;&lt;\",\"&lt;&lt;CentralMoment20&lt;&lt;\",\"&lt;&lt;CentralMoment30&lt;&lt;\",\"&lt;&lt;CentralMoment01&lt;&lt;\",\"&lt;&lt;CentralMoment11&lt;&lt;\",\"&lt;&lt;CentralMoment21&lt;&lt;\",\"&lt;&lt;CentralMoment02&lt;&lt;\",\"&lt;&lt;CentralMoment12&lt;&lt;\",\"&lt;&lt;CentralMoment03&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment00&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment10&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment20&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment30&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment01&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment11&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment21&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment02&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment12&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment03&lt;&lt;\",\"&lt;&lt;HuMoment1&lt;&lt;\",\"&lt;&lt;HuMoment2&lt;&lt;\",\"&lt;&lt;HuMoment3&lt;&lt;\",\"&lt;&lt;HuMoment4&lt;&lt;\",\"&lt;&lt;HuMoment5&lt;&lt;\",\"&lt;&lt;HuMoment6&lt;&lt;\",\"&lt;&lt;HuMoment7&lt;&lt;\",\"&lt;&lt;XProjectionHist10&lt;&lt;\",\"&lt;&lt;YProjectionHist10&lt;&lt;\",\"&lt;&lt;XFilledProjectionHist10&lt;&lt;\",\"&lt;&lt;YFilledProjectionHist10&lt;&lt;\",\"&lt;&lt;Distribution10x10_100&lt;&lt;\",\"&lt;&lt;Barycenter2&lt;&lt;\",\"&lt;&lt;numberOfPixels1&lt;&lt;\",\"&lt;&lt;Fourier_1&lt;&lt;\",\"&lt;&lt;Fourier_5&lt;&lt;\",\"&lt;&lt;Fourier_9&lt;&lt;\",\"&lt;&lt;Fourier_15&lt;&lt;\",\"&lt;&lt;nbbranches_1&lt;&lt;\",\"&lt;&lt;LengthsOfBranchesHist_10&lt;&lt;\",\"&lt;&lt;ThicknessLengthsCircleHist30&lt;&lt;\",\"&lt;&lt;tortuosityHist10&lt;&lt;\",\"&lt;&lt;tortuosityDirectionHist10&lt;&lt;\",\"&lt;&lt;tortuosityDerivateHist10&lt;&lt;\",\"&lt;&lt;tortuosityDerivateDirectionHist10&lt;&lt;\",\"&lt;&lt;DirectionPerpendicular5Hist10&lt;&lt;\",\"&lt;&lt;CurvaturePerpendicular5Hist100&lt;&lt;\",\"&lt;&lt;luminanceHist256&lt;&lt;\",\"&lt;&lt;CurvatureAli5Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli5Hist100&lt;&lt;\",\"&lt;&lt;CurvatureAli10Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli10Hist100&lt;&lt;\",\"&lt;&lt;CurvatureAli15Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli15Hist100&lt;&lt;\",\"&lt;&lt;CurvatureAli20Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli20Hist100&lt;&lt;\",\"&lt;&lt;chaincodeHist_4&lt;&lt;\",\"&lt;&lt;chaincodeHist_8&lt;&lt;\",\"&lt;&lt;chaincode8order2_64&lt;&lt;\",\"&lt;&lt;chaincode4order2_16&lt;&lt;\",\"&lt;&lt;chaincode4order3_64&lt;&lt;\",\"&lt;&lt;chaincode8order3_512&lt;&lt;\",\"&lt;&lt;chaincode4order4_256&lt;&lt;\",\"&lt;&lt;chaincode8order4_4096&lt;&lt;\"\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; differences.close();<br>&nbsp;&nbsp;&nbsp; //You might use the obtained \"train_differences.csv\" file to build your model<br>&nbsp;&nbsp;&nbsp; //I used here the model trained using a logistic regression classifier after keeping the 5 most discriminant features :<br>&nbsp;&nbsp;&nbsp; //double linear=(-10.667528249636) + -0.0667090106640684 * NumberOfConnectedComponents_1 +9.34910163750235 * ThicknessLengthsCircleHist30 + 30.4471654988069 *CurvaturePerpendicular5Hist100 + 30.5600351874986 * luminanceHist256 +33.6853635484793 * chaincode8order3_512;<br>&nbsp;&nbsp;&nbsp; //double prob_same_writer=1. / (1. + exp(linear));<br><br>&nbsp;&nbsp;&nbsp; //reading the testing documents<br>&nbsp;&nbsp;&nbsp; std::ifstream test_data(\"test.csv\");<br>&nbsp;&nbsp;&nbsp; linenum=0;<br>&nbsp;&nbsp;&nbsp; document_features**my_questioned_document_features=new document_features*[53];<br><br>&nbsp;&nbsp;&nbsp; while (getline (test_data, line))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cout &lt;&lt; \"\\nLine #\" &lt;&lt; linenum &lt;&lt; \":\" &lt;&lt; endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; istringstream linestream(line);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(linenum&gt;0)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; int row_index=linenum-1;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]=new document_features();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //my_questioned_document_features[row_index]-&gt;writer_id=atoi(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NumberOfConnectedComponents_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NumberOfHoles_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment1=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment2=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment3=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment4=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment5=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment6=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment7=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;XProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;YProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;XFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;YFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Distribution10x10_100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Barycenter2[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Barycenter2[1]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;numberOfPixels1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_5[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_9[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_15[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;nbbranches_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;LengthsOfBranchesHist_10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;ThicknessLengthsCircleHist30[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityDerivateHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityDerivateDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;DirectionPerpendicular5Hist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturePerpendicular5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;luminanceHist256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincodeHist_4[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincodeHist_8[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode8order2_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode4order2_16[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode4order3_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode8order3_512[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode4order4_256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode8order4_4096[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; linenum++;<br>&nbsp;&nbsp;&nbsp; }<br><br><br>&nbsp;&nbsp;&nbsp; //comparing all the documents of the test set with all the documents of the training set<br>&nbsp;&nbsp;&nbsp; for(int document_index1=0;document_index1&lt;53;document_index1++)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double maxprob=0;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int document_index2=0;document_index2&lt;108;document_index2++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double NumberOfConnectedComponents_1=0,NumberOfHoles_1=0,SpatialMoment00=0,SpatialMoment10=0,SpatialMoment20=0,SpatialMoment30=0,SpatialMoment01=0,SpatialMoment11=0,SpatialMoment21=0,SpatialMoment02=0,SpatialMoment12=0,SpatialMoment03=0,CentralMoment00=0,CentralMoment10=0,CentralMoment20=0,CentralMoment30=0,CentralMoment01=0,CentralMoment11=0,CentralMoment21=0,CentralMoment02=0,CentralMoment12=0,CentralMoment03=0,NormalizedCentralMoment00=0,NormalizedCentralMoment10=0,NormalizedCentralMoment20=0,NormalizedCentralMoment30=0,NormalizedCentralMoment01=0,NormalizedCentralMoment11=0,NormalizedCentralMoment21=0,NormalizedCentralMoment02=0,NormalizedCentralMoment12=0,NormalizedCentralMoment03=0,HuMoment1=0,HuMoment2=0,HuMoment3=0,HuMoment4=0,HuMoment5=0,HuMoment6=0,HuMoment7=0,ThicknessLengthsCircleHist30=0,XProjectionHist10=0,YProjectionHist10=0,Distribution10x10_100=0,tortuosityHist10=0,tortuosityDirectionHist10=0,tortuosityDerivateHist10=0,tortuosityDerivateDirectionHist10=0,nbbranches_1=0,LengthsOfBranchesHist_10=0,numberOfPixels1=0,XFilledProjectionHist10=0,YFilledProjectionHist10=0,Barycenter2=0,DirectionPerpendicular5Hist10=0,CurvaturePerpendicular5Hist100=0,luminanceHist256=0,CurvatureAli5Hist100=0,CurvaturesDerivateAli5Hist100=0,CurvatureAli10Hist100=0,CurvaturesDerivateAli10Hist100=0,CurvatureAli15Hist100=0,CurvaturesDerivateAli15Hist100=0,CurvatureAli20Hist100=0,CurvaturesDerivateAli20Hist100=0,chaincodeHist_4=0,chaincodeHist_8=0,chaincode8order2_64=0,chaincode4order2_16=0,chaincode4order3_64=0,chaincode8order3_512=0,chaincode4order4_256=0,chaincode8order4_4096=0,Fourier_1=0,Fourier_5=0,Fourier_9=0,Fourier_15=0;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfConnectedComponents_1+=fabs(my_questioned_document_features[document_index1]-&gt;NumberOfConnectedComponents_1[0]-my_document_features[document_index2]-&gt;NumberOfConnectedComponents_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfHoles_1+=fabs(my_questioned_document_features[document_index1]-&gt;NumberOfHoles_1[0]-my_document_features[document_index2]-&gt;NumberOfHoles_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment00+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment00-my_document_features[document_index2]-&gt;SpatialMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment10+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment10-my_document_features[document_index2]-&gt;SpatialMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment20+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment20-my_document_features[document_index2]-&gt;SpatialMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment30+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment30-my_document_features[document_index2]-&gt;SpatialMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment01+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment01-my_document_features[document_index2]-&gt;SpatialMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment11+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment11-my_document_features[document_index2]-&gt;SpatialMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment21+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment21-my_document_features[document_index2]-&gt;SpatialMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment02+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment02-my_document_features[document_index2]-&gt;SpatialMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment12+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment12-my_document_features[document_index2]-&gt;SpatialMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment03+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment03-my_document_features[document_index2]-&gt;SpatialMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment00+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment00-my_document_features[document_index2]-&gt;CentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment10+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment10-my_document_features[document_index2]-&gt;CentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment20+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment20-my_document_features[document_index2]-&gt;CentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment30+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment30-my_document_features[document_index2]-&gt;CentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment01+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment01-my_document_features[document_index2]-&gt;CentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment11+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment11-my_document_features[document_index2]-&gt;CentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment21+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment21-my_document_features[document_index2]-&gt;CentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment02+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment02-my_document_features[document_index2]-&gt;CentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment12+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment12-my_document_features[document_index2]-&gt;CentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment03+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment03-my_document_features[document_index2]-&gt;CentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment00+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment00-my_document_features[document_index2]-&gt;NormalizedCentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment10+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment10-my_document_features[document_index2]-&gt;NormalizedCentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment20+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment20-my_document_features[document_index2]-&gt;NormalizedCentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment30+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment30-my_document_features[document_index2]-&gt;NormalizedCentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment01+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment01-my_document_features[document_index2]-&gt;NormalizedCentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment11+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment11-my_document_features[document_index2]-&gt;NormalizedCentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment21+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment21-my_document_features[document_index2]-&gt;NormalizedCentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment02+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment02-my_document_features[document_index2]-&gt;NormalizedCentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment12+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment12-my_document_features[document_index2]-&gt;NormalizedCentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment03+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment03-my_document_features[document_index2]-&gt;NormalizedCentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment1+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment1-my_document_features[document_index2]-&gt;HuMoment1);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment2+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment2-my_document_features[document_index2]-&gt;HuMoment2);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment3+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment3-my_document_features[document_index2]-&gt;HuMoment3);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment4+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment4-my_document_features[document_index2]-&gt;HuMoment4);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment5+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment5-my_document_features[document_index2]-&gt;HuMoment5);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment6+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment6-my_document_features[document_index2]-&gt;HuMoment6);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment7+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment7-my_document_features[document_index2]-&gt;HuMoment7);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;XProjectionHist10[x]-my_document_features[document_index2]-&gt;XProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;YProjectionHist10[x]-my_document_features[document_index2]-&gt;YProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XFilledProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;XFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;XFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YFilledProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;YFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;YFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Distribution10x10_100+=fabs(my_questioned_document_features[document_index1]-&gt;Distribution10x10_100[x]-my_document_features[document_index2]-&gt;Distribution10x10_100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;2;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Barycenter2+=fabs(my_questioned_document_features[document_index1]-&gt;Barycenter2[x]-my_document_features[document_index2]-&gt;Barycenter2[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; numberOfPixels1+=fabs(my_questioned_document_features[document_index1]-&gt;numberOfPixels1[0]-my_document_features[document_index2]-&gt;numberOfPixels1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;1;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_1+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_1[x]-my_document_features[document_index2]-&gt;Fourier_1[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_5+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_5[x]-my_document_features[document_index2]-&gt;Fourier_5[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_9+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_9[x]-my_document_features[document_index2]-&gt;Fourier_9[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_15+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_15[x]-my_document_features[document_index2]-&gt;Fourier_15[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; nbbranches_1+=fabs(my_questioned_document_features[document_index1]-&gt;nbbranches_1[0]-my_document_features[document_index2]-&gt;nbbranches_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; LengthsOfBranchesHist_10+=fabs(my_questioned_document_features[document_index1]-&gt;LengthsOfBranchesHist_10[x]-my_document_features[document_index2]-&gt;LengthsOfBranchesHist_10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ThicknessLengthsCircleHist30+=fabs(my_questioned_document_features[document_index1]-&gt;ThicknessLengthsCircleHist30[x]-my_document_features[document_index2]-&gt;ThicknessLengthsCircleHist30[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityHist10[x]-my_document_features[document_index2]-&gt;tortuosityHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDirectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityDerivateHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateDirectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityDerivateDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; DirectionPerpendicular5Hist10+=fabs(my_questioned_document_features[document_index1]-&gt;DirectionPerpendicular5Hist10[x]-my_document_features[document_index2]-&gt;DirectionPerpendicular5Hist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturePerpendicular5Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturePerpendicular5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturePerpendicular5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; luminanceHist256+=fabs(my_questioned_document_features[document_index1]-&gt;luminanceHist256[x]-my_document_features[document_index2]-&gt;luminanceHist256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli5Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli5Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli10Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli10Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli15Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli15Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli20Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli20Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_4+=fabs(my_questioned_document_features[document_index1]-&gt;chaincodeHist_4[x]-my_document_features[document_index2]-&gt;chaincodeHist_4[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_8+=fabs(my_questioned_document_features[document_index1]-&gt;chaincodeHist_8[x]-my_document_features[document_index2]-&gt;chaincodeHist_8[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order2_64+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode8order2_64[x]-my_document_features[document_index2]-&gt;chaincode8order2_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order2_16+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode4order2_16[x]-my_document_features[document_index2]-&gt;chaincode4order2_16[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order3_64+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode4order3_64[x]-my_document_features[document_index2]-&gt;chaincode4order3_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order3_512+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode8order3_512[x]-my_document_features[document_index2]-&gt;chaincode8order3_512[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order4_256+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode4order4_256[x]-my_document_features[document_index2]-&gt;chaincode4order4_256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order4_4096+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode8order4_4096[x]-my_document_features[document_index2]-&gt;chaincode8order4_4096[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //using the model previously built<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double linear=(-10.667528249636) + -0.0667090106640684 * NumberOfConnectedComponents_1 +9.34910163750235 * ThicknessLengthsCircleHist30 + 30.4471654988069 *CurvaturePerpendicular5Hist100 + 30.5600351874986 * luminanceHist256 +33.6853635484793 * chaincode8order3_512;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double prob_same_writer=1. / (1. + exp(linear));<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //the most probable writer<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(prob_same_writer&gt;maxprob)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; maxprob=prob_same_writer;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[document_index1]-&gt;writer_id=my_document_features[document_index2]-&gt;writer_id;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; //creating the file to submit<br>&nbsp;&nbsp;&nbsp; //this benchmark does not provide a way of detecting unknown writers<br>&nbsp;&nbsp;&nbsp; &nbsp;std::ofstream submission_file(\"new_benchmark.csv\");<br>&nbsp;&nbsp;&nbsp; &nbsp;submission_file&lt;&lt;\",031,034,035,036,037,038,039,041,042,046,047,048,049,050,051,052,053,054,055,056,057,058,059,060,061,062,063,064,065,066,067,068,069,070,071,072,073,074,077,078,080,081,082,083,084,087,088,090,091,092,093,095,096,unknown\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;int writers[]={31,34,35,36,37,38,39,41,42,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,77,78,80,81,82,83,84,87,88,90,91,92,93,95,96};<br>&nbsp;&nbsp;&nbsp; &nbsp;string questioned_writers[]={\"AA\",\"AB\",\"AC\",\"AD\",\"AE\",\"AF\",\"AG\",\"AH\",\"AI\",\"AJ\",\"AK\",\"AM\",\"AN\",\"AO\",\"AP\",\"AQ\",\"AR\",\"AS\",\"AT\",\"AU\",\"AV\",\"AW\",\"AX\",\"AY\",\"AZ\",\"BA\",\"BB\",\"BC\",\"BD\",\"BE\",\"BF\",\"BG\",\"BH\",\"BI\",\"BK\",\"BL\",\"BM\",\"BN\",\"BO\",\"BP\",\"BQ\",\"BR\",\"BS\",\"BT\",\"BU\",\"BV\",\"BW\",\"BX\",\"BY\",\"BZ\",\"CA\",\"CB\",\"CC\"};<br>&nbsp;&nbsp;&nbsp; &nbsp;for(int document_index1=0;document_index1&lt;53;document_index1++)<br>&nbsp;&nbsp;&nbsp; &nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;submission_file&lt;&lt;questioned_writers[document_index1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;bool at_least_one=false;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;for(int writer_index=0;writer_index&lt;53;writer_index++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if(my_questioned_document_features[document_index1]-&gt;writer_id==writers[writer_index])<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;at_least_one=true;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;submission_file&lt;&lt;\",1\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else submission_file&lt;&lt;\",0\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;//unknown writer<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if(at_least_one)submission_file&lt;&lt;\",0\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else submission_file&lt;&lt;\",1\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;}<br>&nbsp;&nbsp;&nbsp; &nbsp;submission_file.close();<br><br><br>&nbsp;&nbsp;&nbsp; std::cout&lt;&lt;\"Press a key to exit...\";<br>&nbsp;&nbsp;&nbsp; _getch();<br>}<br mce_bogus=\"1\">",
  "messages": [
    {
      "id": "1993",
      "postDate": "03/13/2011 17:45:09",
      "content": "Dear participants,<br><br>Below is the c++ code used to generate the benchmark.<br>Comments are welcome.<br><br><br>#include \"stdafx.h\"<br>#include &lt;fstream&gt;<br>#include &lt;conio.h&gt;<br>#include &lt;list&gt;<br>#include &lt;iostream&gt;<br>#include &lt;sstream&gt;<br>#include &lt;vector&gt;<br>#include &lt;string&gt;<br>#include &lt;math.h&gt;<br><br><br><br>using namespace std;<br>//class handling the provided features<br>class document_features<br>{<br>public:<br>&nbsp;&nbsp;&nbsp; document_features()<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ThicknessLengthsCircleHist30=new double[30];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Distribution10x10_100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDirectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateDirectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; nbbranches_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; LengthsOfBranchesHist_10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; numberOfPixels1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XFilledProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YFilledProjectionHist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Barycenter2=new double[2];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; DirectionPerpendicular5Hist10=new double[10];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturePerpendicular5Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; luminanceHist256=new double[256];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli5Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli5Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli10Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli10Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli15Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli15Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli20Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli20Hist100=new double[100];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_4=new double[4];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_8=new double[8];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order2_64=new double[64];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order2_16=new double[16];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order3_64=new double[64];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order3_512=new double[512];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order4_256=new double[256];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order4_4096=new double[4096];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfConnectedComponents_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfHoles_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_1=new double[1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_5=new double[5];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_9=new double[9];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_15=new double[15];<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; double*ThicknessLengthsCircleHist30,*XProjectionHist10,*YProjectionHist10,*Distribution10x10_100,*tortuosityHist10,*tortuosityDirectionHist10,*tortuosityDerivateHist10,*tortuosityDerivateDirectionHist10,*nbbranches_1,*LengthsOfBranchesHist_10,*numberOfPixels1,*XFilledProjectionHist10,*YFilledProjectionHist10,*Barycenter2,*DirectionPerpendicular5Hist10,*CurvaturePerpendicular5Hist100,*luminanceHist256,*CurvatureAli5Hist100,*CurvaturesDerivateAli5Hist100,*CurvatureAli10Hist100,*CurvaturesDerivateAli10Hist100,*CurvatureAli15Hist100,*CurvaturesDerivateAli15Hist100,*CurvatureAli20Hist100,*CurvaturesDerivateAli20Hist100,*chaincodeHist_4,*chaincodeHist_8,*chaincode8order2_64,*chaincode4order2_16,*chaincode4order3_64,*chaincode8order3_512,*chaincode4order4_256,*chaincode8order4_4096,*NumberOfConnectedComponents_1,*NumberOfHoles_1,*Fourier_1,*Fourier_5,*Fourier_9,*Fourier_15;<br>&nbsp;&nbsp;&nbsp; double SpatialMoment00,SpatialMoment10,SpatialMoment20,SpatialMoment30,SpatialMoment01,SpatialMoment11,SpatialMoment21,SpatialMoment02,SpatialMoment12,SpatialMoment03,CentralMoment00,CentralMoment10,CentralMoment20,CentralMoment30,CentralMoment01,CentralMoment11,CentralMoment21,CentralMoment02,CentralMoment12,CentralMoment03,NormalizedCentralMoment00,NormalizedCentralMoment10,NormalizedCentralMoment20,NormalizedCentralMoment30,NormalizedCentralMoment01,NormalizedCentralMoment11,NormalizedCentralMoment21,NormalizedCentralMoment02,NormalizedCentralMoment12,NormalizedCentralMoment03,HuMoment1,HuMoment2,HuMoment3,HuMoment4,HuMoment5,HuMoment6,HuMoment7;<br>&nbsp;&nbsp;&nbsp; int writer_id;<br>};<br><br><br>void main()<br>{<br>&nbsp;&nbsp;&nbsp; //training phase<br>&nbsp;&nbsp;&nbsp; std::ifstream data(\"train.csv\");<br>&nbsp;&nbsp;&nbsp; int linenum=0;<br>&nbsp;&nbsp;&nbsp; string line;<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; document_features**my_document_features=new document_features*[108];<br>&nbsp;&nbsp;&nbsp; string item;//=new char[4];<br><br>&nbsp;&nbsp;&nbsp; //reading the training documents<br>&nbsp;&nbsp;&nbsp; while (getline (data, line))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cout &lt;&lt; \"\\nLine #\" &lt;&lt; linenum &lt;&lt; \":\" &lt;&lt; endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; istringstream linestream(line);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(linenum&gt;0)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; int row_index=linenum-1;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]=new document_features();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;writer_id=atoi(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NumberOfConnectedComponents_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NumberOfHoles_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;SpatialMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;NormalizedCentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment1=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment2=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment3=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment4=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment5=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment6=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;HuMoment7=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;XProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;YProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;XFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;YFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Distribution10x10_100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Barycenter2[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Barycenter2[1]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;numberOfPixels1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_5[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_9[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;Fourier_15[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;nbbranches_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;LengthsOfBranchesHist_10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;ThicknessLengthsCircleHist30[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityDerivateHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;tortuosityDerivateDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;DirectionPerpendicular5Hist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturePerpendicular5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;luminanceHist256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvatureAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;CurvaturesDerivateAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincodeHist_4[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincodeHist_8[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode8order2_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode4order2_16[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode4order3_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode8order3_512[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode4order4_256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_document_features[row_index]-&gt;chaincode8order4_4096[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; linenum++;<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; //difference between features of all documents in the training set<br>&nbsp;&nbsp;&nbsp; std::ofstream differences(\"train_differences.csv\");<br>&nbsp;&nbsp;&nbsp; differences&lt;&lt;\"SameWriter,NumberOfConnectedComponents_1,NumberOfHoles_1,SpatialMoment00,SpatialMoment10,SpatialMoment20,SpatialMoment30,SpatialMoment01,SpatialMoment11,SpatialMoment21,SpatialMoment02,SpatialMoment12,SpatialMoment03,CentralMoment00,CentralMoment10,CentralMoment20,CentralMoment30,CentralMoment01,CentralMoment11,CentralMoment21,CentralMoment02,CentralMoment12,CentralMoment03,NormalizedCentralMoment00,NormalizedCentralMoment10,NormalizedCentralMoment20,NormalizedCentralMoment30,NormalizedCentralMoment01,NormalizedCentralMoment11,NormalizedCentralMoment21,NormalizedCentralMoment02,NormalizedCentralMoment12,NormalizedCentralMoment03,HuMoment1,HuMoment2,HuMoment3,HuMoment4,HuMoment5,HuMoment6,HuMoment7,XProjectionHist10,YProjectionHist10,XFilledProjectionHist10,YFilledProjectionHist10,Distribution10x10_100,Barycenter2,numberOfPixels1,Fourier_1,Fourier_5,Fourier_9,Fourier_15,nbbranches_1,LengthsOfBranchesHist_10,ThicknessLengthsCircleHist30,tortuosityHist10,tortuosityDirectionHist10,tortuosityDerivateHist10,tortuosityDerivateDirectionHist10,DirectionPerpendicular5Hist10,CurvaturePerpendicular5Hist100,luminanceHist256,CurvatureAli5Hist100,CurvaturesDerivateAli5Hist100,CurvatureAli10Hist100,CurvaturesDerivateAli10Hist100,CurvatureAli15Hist100,CurvaturesDerivateAli15Hist100,CurvatureAli20Hist100,CurvaturesDerivateAli20Hist100,chaincodeHist_4,chaincodeHist_8,chaincode8order2_64,chaincode4order2_16,chaincode4order3_64,chaincode8order3_512,chaincode4order4_256,chaincode8order4_4096\\n\";<br>&nbsp;&nbsp;&nbsp; //comparing each pair of documents<br>&nbsp;&nbsp;&nbsp; for(int document_index1=0;document_index1&lt;107;document_index1++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int document_index2=document_index1+1;document_index2&lt;108;document_index2++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double NumberOfConnectedComponents_1=0,NumberOfHoles_1=0,SpatialMoment00=0,SpatialMoment10=0,SpatialMoment20=0,SpatialMoment30=0,SpatialMoment01=0,SpatialMoment11=0,SpatialMoment21=0,SpatialMoment02=0,SpatialMoment12=0,SpatialMoment03=0,CentralMoment00=0,CentralMoment10=0,CentralMoment20=0,CentralMoment30=0,CentralMoment01=0,CentralMoment11=0,CentralMoment21=0,CentralMoment02=0,CentralMoment12=0,CentralMoment03=0,NormalizedCentralMoment00=0,NormalizedCentralMoment10=0,NormalizedCentralMoment20=0,NormalizedCentralMoment30=0,NormalizedCentralMoment01=0,NormalizedCentralMoment11=0,NormalizedCentralMoment21=0,NormalizedCentralMoment02=0,NormalizedCentralMoment12=0,NormalizedCentralMoment03=0,HuMoment1=0,HuMoment2=0,HuMoment3=0,HuMoment4=0,HuMoment5=0,HuMoment6=0,HuMoment7=0,ThicknessLengthsCircleHist30=0,XProjectionHist10=0,YProjectionHist10=0,Distribution10x10_100=0,tortuosityHist10=0,tortuosityDirectionHist10=0,tortuosityDerivateHist10=0,tortuosityDerivateDirectionHist10=0,nbbranches_1=0,LengthsOfBranchesHist_10=0,numberOfPixels1=0,XFilledProjectionHist10=0,YFilledProjectionHist10=0,Barycenter2=0,DirectionPerpendicular5Hist10=0,CurvaturePerpendicular5Hist100=0,luminanceHist256=0,CurvatureAli5Hist100=0,CurvaturesDerivateAli5Hist100=0,CurvatureAli10Hist100=0,CurvaturesDerivateAli10Hist100=0,CurvatureAli15Hist100=0,CurvaturesDerivateAli15Hist100=0,CurvatureAli20Hist100=0,CurvaturesDerivateAli20Hist100=0,chaincodeHist_4=0,chaincodeHist_8=0,chaincode8order2_64=0,chaincode4order2_16=0,chaincode4order3_64=0,chaincode8order3_512=0,chaincode4order4_256=0,chaincode8order4_4096=0,Fourier_1=0,Fourier_5=0,Fourier_9=0,Fourier_15=0;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfConnectedComponents_1+=fabs(my_document_features[document_index1]-&gt;NumberOfConnectedComponents_1[0]-my_document_features[document_index2]-&gt;NumberOfConnectedComponents_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfHoles_1+=fabs(my_document_features[document_index1]-&gt;NumberOfHoles_1[0]-my_document_features[document_index2]-&gt;NumberOfHoles_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment00+=fabs(my_document_features[document_index1]-&gt;SpatialMoment00-my_document_features[document_index2]-&gt;SpatialMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment10+=fabs(my_document_features[document_index1]-&gt;SpatialMoment10-my_document_features[document_index2]-&gt;SpatialMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment20+=fabs(my_document_features[document_index1]-&gt;SpatialMoment20-my_document_features[document_index2]-&gt;SpatialMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment30+=fabs(my_document_features[document_index1]-&gt;SpatialMoment30-my_document_features[document_index2]-&gt;SpatialMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment01+=fabs(my_document_features[document_index1]-&gt;SpatialMoment01-my_document_features[document_index2]-&gt;SpatialMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment11+=fabs(my_document_features[document_index1]-&gt;SpatialMoment11-my_document_features[document_index2]-&gt;SpatialMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment21+=fabs(my_document_features[document_index1]-&gt;SpatialMoment21-my_document_features[document_index2]-&gt;SpatialMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment02+=fabs(my_document_features[document_index1]-&gt;SpatialMoment02-my_document_features[document_index2]-&gt;SpatialMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment12+=fabs(my_document_features[document_index1]-&gt;SpatialMoment12-my_document_features[document_index2]-&gt;SpatialMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment03+=fabs(my_document_features[document_index1]-&gt;SpatialMoment03-my_document_features[document_index2]-&gt;SpatialMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment00+=fabs(my_document_features[document_index1]-&gt;CentralMoment00-my_document_features[document_index2]-&gt;CentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment10+=fabs(my_document_features[document_index1]-&gt;CentralMoment10-my_document_features[document_index2]-&gt;CentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment20+=fabs(my_document_features[document_index1]-&gt;CentralMoment20-my_document_features[document_index2]-&gt;CentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment30+=fabs(my_document_features[document_index1]-&gt;CentralMoment30-my_document_features[document_index2]-&gt;CentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment01+=fabs(my_document_features[document_index1]-&gt;CentralMoment01-my_document_features[document_index2]-&gt;CentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment11+=fabs(my_document_features[document_index1]-&gt;CentralMoment11-my_document_features[document_index2]-&gt;CentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment21+=fabs(my_document_features[document_index1]-&gt;CentralMoment21-my_document_features[document_index2]-&gt;CentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment02+=fabs(my_document_features[document_index1]-&gt;CentralMoment02-my_document_features[document_index2]-&gt;CentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment12+=fabs(my_document_features[document_index1]-&gt;CentralMoment12-my_document_features[document_index2]-&gt;CentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment03+=fabs(my_document_features[document_index1]-&gt;CentralMoment03-my_document_features[document_index2]-&gt;CentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment00+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment00-my_document_features[document_index2]-&gt;NormalizedCentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment10+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment10-my_document_features[document_index2]-&gt;NormalizedCentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment20+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment20-my_document_features[document_index2]-&gt;NormalizedCentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment30+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment30-my_document_features[document_index2]-&gt;NormalizedCentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment01+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment01-my_document_features[document_index2]-&gt;NormalizedCentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment11+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment11-my_document_features[document_index2]-&gt;NormalizedCentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment21+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment21-my_document_features[document_index2]-&gt;NormalizedCentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment02+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment02-my_document_features[document_index2]-&gt;NormalizedCentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment12+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment12-my_document_features[document_index2]-&gt;NormalizedCentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment03+=fabs(my_document_features[document_index1]-&gt;NormalizedCentralMoment03-my_document_features[document_index2]-&gt;NormalizedCentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment1+=fabs(my_document_features[document_index1]-&gt;HuMoment1-my_document_features[document_index2]-&gt;HuMoment1);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment2+=fabs(my_document_features[document_index1]-&gt;HuMoment2-my_document_features[document_index2]-&gt;HuMoment2);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment3+=fabs(my_document_features[document_index1]-&gt;HuMoment3-my_document_features[document_index2]-&gt;HuMoment3);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment4+=fabs(my_document_features[document_index1]-&gt;HuMoment4-my_document_features[document_index2]-&gt;HuMoment4);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment5+=fabs(my_document_features[document_index1]-&gt;HuMoment5-my_document_features[document_index2]-&gt;HuMoment5);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment6+=fabs(my_document_features[document_index1]-&gt;HuMoment6-my_document_features[document_index2]-&gt;HuMoment6);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment7+=fabs(my_document_features[document_index1]-&gt;HuMoment7-my_document_features[document_index2]-&gt;HuMoment7);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XProjectionHist10+=fabs(my_document_features[document_index1]-&gt;XProjectionHist10[x]-my_document_features[document_index2]-&gt;XProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YProjectionHist10+=fabs(my_document_features[document_index1]-&gt;YProjectionHist10[x]-my_document_features[document_index2]-&gt;YProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XFilledProjectionHist10+=fabs(my_document_features[document_index1]-&gt;XFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;XFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YFilledProjectionHist10+=fabs(my_document_features[document_index1]-&gt;YFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;YFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Distribution10x10_100+=fabs(my_document_features[document_index1]-&gt;Distribution10x10_100[x]-my_document_features[document_index2]-&gt;Distribution10x10_100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;2;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Barycenter2+=fabs(my_document_features[document_index1]-&gt;Barycenter2[x]-my_document_features[document_index2]-&gt;Barycenter2[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; numberOfPixels1+=fabs(my_document_features[document_index1]-&gt;numberOfPixels1[0]-my_document_features[document_index2]-&gt;numberOfPixels1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;1;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_1+=fabs(my_document_features[document_index1]-&gt;Fourier_1[x]-my_document_features[document_index2]-&gt;Fourier_1[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_5+=fabs(my_document_features[document_index1]-&gt;Fourier_5[x]-my_document_features[document_index2]-&gt;Fourier_5[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_9+=fabs(my_document_features[document_index1]-&gt;Fourier_9[x]-my_document_features[document_index2]-&gt;Fourier_9[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_15+=fabs(my_document_features[document_index1]-&gt;Fourier_15[x]-my_document_features[document_index2]-&gt;Fourier_15[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; nbbranches_1+=fabs(my_document_features[document_index1]-&gt;nbbranches_1[0]-my_document_features[document_index2]-&gt;nbbranches_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; LengthsOfBranchesHist_10+=fabs(my_document_features[document_index1]-&gt;LengthsOfBranchesHist_10[x]-my_document_features[document_index2]-&gt;LengthsOfBranchesHist_10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ThicknessLengthsCircleHist30+=fabs(my_document_features[document_index1]-&gt;ThicknessLengthsCircleHist30[x]-my_document_features[document_index2]-&gt;ThicknessLengthsCircleHist30[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityHist10[x]-my_document_features[document_index2]-&gt;tortuosityHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDirectionHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityDerivateHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateDirectionHist10+=fabs(my_document_features[document_index1]-&gt;tortuosityDerivateDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; DirectionPerpendicular5Hist10+=fabs(my_document_features[document_index1]-&gt;DirectionPerpendicular5Hist10[x]-my_document_features[document_index2]-&gt;DirectionPerpendicular5Hist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturePerpendicular5Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturePerpendicular5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturePerpendicular5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; luminanceHist256+=fabs(my_document_features[document_index1]-&gt;luminanceHist256[x]-my_document_features[document_index2]-&gt;luminanceHist256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli5Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli5Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli10Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli10Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli15Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli15Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli20Hist100+=fabs(my_document_features[document_index1]-&gt;CurvatureAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli20Hist100+=fabs(my_document_features[document_index1]-&gt;CurvaturesDerivateAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_4+=fabs(my_document_features[document_index1]-&gt;chaincodeHist_4[x]-my_document_features[document_index2]-&gt;chaincodeHist_4[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_8+=fabs(my_document_features[document_index1]-&gt;chaincodeHist_8[x]-my_document_features[document_index2]-&gt;chaincodeHist_8[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order2_64+=fabs(my_document_features[document_index1]-&gt;chaincode8order2_64[x]-my_document_features[document_index2]-&gt;chaincode8order2_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order2_16+=fabs(my_document_features[document_index1]-&gt;chaincode4order2_16[x]-my_document_features[document_index2]-&gt;chaincode4order2_16[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order3_64+=fabs(my_document_features[document_index1]-&gt;chaincode4order3_64[x]-my_document_features[document_index2]-&gt;chaincode4order3_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order3_512+=fabs(my_document_features[document_index1]-&gt;chaincode8order3_512[x]-my_document_features[document_index2]-&gt;chaincode8order3_512[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order4_256+=fabs(my_document_features[document_index1]-&gt;chaincode4order4_256[x]-my_document_features[document_index2]-&gt;chaincode4order4_256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order4_4096+=fabs(my_document_features[document_index1]-&gt;chaincode8order4_4096[x]-my_document_features[document_index2]-&gt;chaincode8order4_4096[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(my_document_features[document_index1]-&gt;writer_id==my_document_features[document_index2]-&gt;writer_id)differences&lt;&lt;\"1,\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else differences&lt;&lt;\"0,\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; differences&lt;&lt;NumberOfConnectedComponents_1&lt;&lt;\",\"&lt;&lt;NumberOfHoles_1&lt;&lt;\",\"&lt;&lt;SpatialMoment00&lt;&lt;\",\"&lt;&lt;SpatialMoment10&lt;&lt;\",\"&lt;&lt;SpatialMoment20&lt;&lt;\",\"&lt;&lt;SpatialMoment30&lt;&lt;\",\"&lt;&lt;SpatialMoment01&lt;&lt;\",\"&lt;&lt;SpatialMoment11&lt;&lt;\",\"&lt;&lt;SpatialMoment21&lt;&lt;\",\"&lt;&lt;SpatialMoment02&lt;&lt;\",\"&lt;&lt;SpatialMoment12&lt;&lt;\",\"&lt;&lt;SpatialMoment03&lt;&lt;\",\"&lt;&lt;CentralMoment00&lt;&lt;\",\"&lt;&lt;CentralMoment10&lt;&lt;\",\"&lt;&lt;CentralMoment20&lt;&lt;\",\"&lt;&lt;CentralMoment30&lt;&lt;\",\"&lt;&lt;CentralMoment01&lt;&lt;\",\"&lt;&lt;CentralMoment11&lt;&lt;\",\"&lt;&lt;CentralMoment21&lt;&lt;\",\"&lt;&lt;CentralMoment02&lt;&lt;\",\"&lt;&lt;CentralMoment12&lt;&lt;\",\"&lt;&lt;CentralMoment03&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment00&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment10&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment20&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment30&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment01&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment11&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment21&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment02&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment12&lt;&lt;\",\"&lt;&lt;NormalizedCentralMoment03&lt;&lt;\",\"&lt;&lt;HuMoment1&lt;&lt;\",\"&lt;&lt;HuMoment2&lt;&lt;\",\"&lt;&lt;HuMoment3&lt;&lt;\",\"&lt;&lt;HuMoment4&lt;&lt;\",\"&lt;&lt;HuMoment5&lt;&lt;\",\"&lt;&lt;HuMoment6&lt;&lt;\",\"&lt;&lt;HuMoment7&lt;&lt;\",\"&lt;&lt;XProjectionHist10&lt;&lt;\",\"&lt;&lt;YProjectionHist10&lt;&lt;\",\"&lt;&lt;XFilledProjectionHist10&lt;&lt;\",\"&lt;&lt;YFilledProjectionHist10&lt;&lt;\",\"&lt;&lt;Distribution10x10_100&lt;&lt;\",\"&lt;&lt;Barycenter2&lt;&lt;\",\"&lt;&lt;numberOfPixels1&lt;&lt;\",\"&lt;&lt;Fourier_1&lt;&lt;\",\"&lt;&lt;Fourier_5&lt;&lt;\",\"&lt;&lt;Fourier_9&lt;&lt;\",\"&lt;&lt;Fourier_15&lt;&lt;\",\"&lt;&lt;nbbranches_1&lt;&lt;\",\"&lt;&lt;LengthsOfBranchesHist_10&lt;&lt;\",\"&lt;&lt;ThicknessLengthsCircleHist30&lt;&lt;\",\"&lt;&lt;tortuosityHist10&lt;&lt;\",\"&lt;&lt;tortuosityDirectionHist10&lt;&lt;\",\"&lt;&lt;tortuosityDerivateHist10&lt;&lt;\",\"&lt;&lt;tortuosityDerivateDirectionHist10&lt;&lt;\",\"&lt;&lt;DirectionPerpendicular5Hist10&lt;&lt;\",\"&lt;&lt;CurvaturePerpendicular5Hist100&lt;&lt;\",\"&lt;&lt;luminanceHist256&lt;&lt;\",\"&lt;&lt;CurvatureAli5Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli5Hist100&lt;&lt;\",\"&lt;&lt;CurvatureAli10Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli10Hist100&lt;&lt;\",\"&lt;&lt;CurvatureAli15Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli15Hist100&lt;&lt;\",\"&lt;&lt;CurvatureAli20Hist100&lt;&lt;\",\"&lt;&lt;CurvaturesDerivateAli20Hist100&lt;&lt;\",\"&lt;&lt;chaincodeHist_4&lt;&lt;\",\"&lt;&lt;chaincodeHist_8&lt;&lt;\",\"&lt;&lt;chaincode8order2_64&lt;&lt;\",\"&lt;&lt;chaincode4order2_16&lt;&lt;\",\"&lt;&lt;chaincode4order3_64&lt;&lt;\",\"&lt;&lt;chaincode8order3_512&lt;&lt;\",\"&lt;&lt;chaincode4order4_256&lt;&lt;\",\"&lt;&lt;chaincode8order4_4096&lt;&lt;\"\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; differences.close();<br>&nbsp;&nbsp;&nbsp; //You might use the obtained \"train_differences.csv\" file to build your model<br>&nbsp;&nbsp;&nbsp; //I used here the model trained using a logistic regression classifier after keeping the 5 most discriminant features :<br>&nbsp;&nbsp;&nbsp; //double linear=(-10.667528249636) + -0.0667090106640684 * NumberOfConnectedComponents_1 +9.34910163750235 * ThicknessLengthsCircleHist30 + 30.4471654988069 *CurvaturePerpendicular5Hist100 + 30.5600351874986 * luminanceHist256 +33.6853635484793 * chaincode8order3_512;<br>&nbsp;&nbsp;&nbsp; //double prob_same_writer=1. / (1. + exp(linear));<br><br>&nbsp;&nbsp;&nbsp; //reading the testing documents<br>&nbsp;&nbsp;&nbsp; std::ifstream test_data(\"test.csv\");<br>&nbsp;&nbsp;&nbsp; linenum=0;<br>&nbsp;&nbsp;&nbsp; document_features**my_questioned_document_features=new document_features*[53];<br><br>&nbsp;&nbsp;&nbsp; while (getline (test_data, line))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cout &lt;&lt; \"\\nLine #\" &lt;&lt; linenum &lt;&lt; \":\" &lt;&lt; endl;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; istringstream linestream(line);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(linenum&gt;0)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; int row_index=linenum-1;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]=new document_features();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //my_questioned_document_features[row_index]-&gt;writer_id=atoi(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NumberOfConnectedComponents_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NumberOfHoles_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;SpatialMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment00=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment10=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment20=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment30=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment01=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment11=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment21=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment02=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment12=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;NormalizedCentralMoment03=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment1=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment2=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment3=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment4=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment5=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment6=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;HuMoment7=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;XProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;YProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;XFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;YFilledProjectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Distribution10x10_100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Barycenter2[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Barycenter2[1]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;numberOfPixels1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_5[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_9[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;Fourier_15[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;nbbranches_1[0]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;LengthsOfBranchesHist_10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;ThicknessLengthsCircleHist30[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityDerivateHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;tortuosityDerivateDirectionHist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;DirectionPerpendicular5Hist10[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturePerpendicular5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;luminanceHist256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli5Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli10Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli15Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvatureAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;CurvaturesDerivateAli20Hist100[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincodeHist_4[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincodeHist_8[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode8order2_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode4order2_16[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode4order3_64[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode8order3_512[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode4order4_256[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; getline (linestream, item, ',');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[row_index]-&gt;chaincode8order4_4096[x]=atof(item.c_str());<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; linenum++;<br>&nbsp;&nbsp;&nbsp; }<br><br><br>&nbsp;&nbsp;&nbsp; //comparing all the documents of the test set with all the documents of the training set<br>&nbsp;&nbsp;&nbsp; for(int document_index1=0;document_index1&lt;53;document_index1++)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double maxprob=0;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int document_index2=0;document_index2&lt;108;document_index2++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double NumberOfConnectedComponents_1=0,NumberOfHoles_1=0,SpatialMoment00=0,SpatialMoment10=0,SpatialMoment20=0,SpatialMoment30=0,SpatialMoment01=0,SpatialMoment11=0,SpatialMoment21=0,SpatialMoment02=0,SpatialMoment12=0,SpatialMoment03=0,CentralMoment00=0,CentralMoment10=0,CentralMoment20=0,CentralMoment30=0,CentralMoment01=0,CentralMoment11=0,CentralMoment21=0,CentralMoment02=0,CentralMoment12=0,CentralMoment03=0,NormalizedCentralMoment00=0,NormalizedCentralMoment10=0,NormalizedCentralMoment20=0,NormalizedCentralMoment30=0,NormalizedCentralMoment01=0,NormalizedCentralMoment11=0,NormalizedCentralMoment21=0,NormalizedCentralMoment02=0,NormalizedCentralMoment12=0,NormalizedCentralMoment03=0,HuMoment1=0,HuMoment2=0,HuMoment3=0,HuMoment4=0,HuMoment5=0,HuMoment6=0,HuMoment7=0,ThicknessLengthsCircleHist30=0,XProjectionHist10=0,YProjectionHist10=0,Distribution10x10_100=0,tortuosityHist10=0,tortuosityDirectionHist10=0,tortuosityDerivateHist10=0,tortuosityDerivateDirectionHist10=0,nbbranches_1=0,LengthsOfBranchesHist_10=0,numberOfPixels1=0,XFilledProjectionHist10=0,YFilledProjectionHist10=0,Barycenter2=0,DirectionPerpendicular5Hist10=0,CurvaturePerpendicular5Hist100=0,luminanceHist256=0,CurvatureAli5Hist100=0,CurvaturesDerivateAli5Hist100=0,CurvatureAli10Hist100=0,CurvaturesDerivateAli10Hist100=0,CurvatureAli15Hist100=0,CurvaturesDerivateAli15Hist100=0,CurvatureAli20Hist100=0,CurvaturesDerivateAli20Hist100=0,chaincodeHist_4=0,chaincodeHist_8=0,chaincode8order2_64=0,chaincode4order2_16=0,chaincode4order3_64=0,chaincode8order3_512=0,chaincode4order4_256=0,chaincode8order4_4096=0,Fourier_1=0,Fourier_5=0,Fourier_9=0,Fourier_15=0;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfConnectedComponents_1+=fabs(my_questioned_document_features[document_index1]-&gt;NumberOfConnectedComponents_1[0]-my_document_features[document_index2]-&gt;NumberOfConnectedComponents_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NumberOfHoles_1+=fabs(my_questioned_document_features[document_index1]-&gt;NumberOfHoles_1[0]-my_document_features[document_index2]-&gt;NumberOfHoles_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment00+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment00-my_document_features[document_index2]-&gt;SpatialMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment10+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment10-my_document_features[document_index2]-&gt;SpatialMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment20+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment20-my_document_features[document_index2]-&gt;SpatialMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment30+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment30-my_document_features[document_index2]-&gt;SpatialMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment01+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment01-my_document_features[document_index2]-&gt;SpatialMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment11+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment11-my_document_features[document_index2]-&gt;SpatialMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment21+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment21-my_document_features[document_index2]-&gt;SpatialMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment02+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment02-my_document_features[document_index2]-&gt;SpatialMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment12+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment12-my_document_features[document_index2]-&gt;SpatialMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SpatialMoment03+=fabs(my_questioned_document_features[document_index1]-&gt;SpatialMoment03-my_document_features[document_index2]-&gt;SpatialMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment00+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment00-my_document_features[document_index2]-&gt;CentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment10+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment10-my_document_features[document_index2]-&gt;CentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment20+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment20-my_document_features[document_index2]-&gt;CentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment30+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment30-my_document_features[document_index2]-&gt;CentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment01+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment01-my_document_features[document_index2]-&gt;CentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment11+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment11-my_document_features[document_index2]-&gt;CentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment21+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment21-my_document_features[document_index2]-&gt;CentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment02+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment02-my_document_features[document_index2]-&gt;CentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment12+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment12-my_document_features[document_index2]-&gt;CentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CentralMoment03+=fabs(my_questioned_document_features[document_index1]-&gt;CentralMoment03-my_document_features[document_index2]-&gt;CentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment00+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment00-my_document_features[document_index2]-&gt;NormalizedCentralMoment00);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment10+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment10-my_document_features[document_index2]-&gt;NormalizedCentralMoment10);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment20+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment20-my_document_features[document_index2]-&gt;NormalizedCentralMoment20);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment30+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment30-my_document_features[document_index2]-&gt;NormalizedCentralMoment30);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment01+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment01-my_document_features[document_index2]-&gt;NormalizedCentralMoment01);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment11+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment11-my_document_features[document_index2]-&gt;NormalizedCentralMoment11);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment21+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment21-my_document_features[document_index2]-&gt;NormalizedCentralMoment21);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment02+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment02-my_document_features[document_index2]-&gt;NormalizedCentralMoment02);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment12+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment12-my_document_features[document_index2]-&gt;NormalizedCentralMoment12);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NormalizedCentralMoment03+=fabs(my_questioned_document_features[document_index1]-&gt;NormalizedCentralMoment03-my_document_features[document_index2]-&gt;NormalizedCentralMoment03);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment1+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment1-my_document_features[document_index2]-&gt;HuMoment1);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment2+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment2-my_document_features[document_index2]-&gt;HuMoment2);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment3+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment3-my_document_features[document_index2]-&gt;HuMoment3);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment4+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment4-my_document_features[document_index2]-&gt;HuMoment4);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment5+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment5-my_document_features[document_index2]-&gt;HuMoment5);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment6+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment6-my_document_features[document_index2]-&gt;HuMoment6);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; HuMoment7+=fabs(my_questioned_document_features[document_index1]-&gt;HuMoment7-my_document_features[document_index2]-&gt;HuMoment7);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;XProjectionHist10[x]-my_document_features[document_index2]-&gt;XProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;YProjectionHist10[x]-my_document_features[document_index2]-&gt;YProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XFilledProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;XFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;XFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; YFilledProjectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;YFilledProjectionHist10[x]-my_document_features[document_index2]-&gt;YFilledProjectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Distribution10x10_100+=fabs(my_questioned_document_features[document_index1]-&gt;Distribution10x10_100[x]-my_document_features[document_index2]-&gt;Distribution10x10_100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;2;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Barycenter2+=fabs(my_questioned_document_features[document_index1]-&gt;Barycenter2[x]-my_document_features[document_index2]-&gt;Barycenter2[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; numberOfPixels1+=fabs(my_questioned_document_features[document_index1]-&gt;numberOfPixels1[0]-my_document_features[document_index2]-&gt;numberOfPixels1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;1;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_1+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_1[x]-my_document_features[document_index2]-&gt;Fourier_1[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;5;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_5+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_5[x]-my_document_features[document_index2]-&gt;Fourier_5[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;9;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_9+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_9[x]-my_document_features[document_index2]-&gt;Fourier_9[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;15;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Fourier_15+=fabs(my_questioned_document_features[document_index1]-&gt;Fourier_15[x]-my_document_features[document_index2]-&gt;Fourier_15[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; nbbranches_1+=fabs(my_questioned_document_features[document_index1]-&gt;nbbranches_1[0]-my_document_features[document_index2]-&gt;nbbranches_1[0]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; LengthsOfBranchesHist_10+=fabs(my_questioned_document_features[document_index1]-&gt;LengthsOfBranchesHist_10[x]-my_document_features[document_index2]-&gt;LengthsOfBranchesHist_10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;30;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ThicknessLengthsCircleHist30+=fabs(my_questioned_document_features[document_index1]-&gt;ThicknessLengthsCircleHist30[x]-my_document_features[document_index2]-&gt;ThicknessLengthsCircleHist30[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityHist10[x]-my_document_features[document_index2]-&gt;tortuosityHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDirectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityDerivateHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tortuosityDerivateDirectionHist10+=fabs(my_questioned_document_features[document_index1]-&gt;tortuosityDerivateDirectionHist10[x]-my_document_features[document_index2]-&gt;tortuosityDerivateDirectionHist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;10;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; DirectionPerpendicular5Hist10+=fabs(my_questioned_document_features[document_index1]-&gt;DirectionPerpendicular5Hist10[x]-my_document_features[document_index2]-&gt;DirectionPerpendicular5Hist10[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturePerpendicular5Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturePerpendicular5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturePerpendicular5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; luminanceHist256+=fabs(my_questioned_document_features[document_index1]-&gt;luminanceHist256[x]-my_document_features[document_index2]-&gt;luminanceHist256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli5Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli5Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli5Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli5Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli10Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli10Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli10Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli10Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli15Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli15Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli15Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli15Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvatureAli20Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvatureAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvatureAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;100;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CurvaturesDerivateAli20Hist100+=fabs(my_questioned_document_features[document_index1]-&gt;CurvaturesDerivateAli20Hist100[x]-my_document_features[document_index2]-&gt;CurvaturesDerivateAli20Hist100[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_4+=fabs(my_questioned_document_features[document_index1]-&gt;chaincodeHist_4[x]-my_document_features[document_index2]-&gt;chaincodeHist_4[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;8;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincodeHist_8+=fabs(my_questioned_document_features[document_index1]-&gt;chaincodeHist_8[x]-my_document_features[document_index2]-&gt;chaincodeHist_8[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order2_64+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode8order2_64[x]-my_document_features[document_index2]-&gt;chaincode8order2_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;16;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order2_16+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode4order2_16[x]-my_document_features[document_index2]-&gt;chaincode4order2_16[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;64;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order3_64+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode4order3_64[x]-my_document_features[document_index2]-&gt;chaincode4order3_64[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;512;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order3_512+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode8order3_512[x]-my_document_features[document_index2]-&gt;chaincode8order3_512[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;256;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode4order4_256+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode4order4_256[x]-my_document_features[document_index2]-&gt;chaincode4order4_256[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for(int x=0;x&lt;4096;x++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chaincode8order4_4096+=fabs(my_questioned_document_features[document_index1]-&gt;chaincode8order4_4096[x]-my_document_features[document_index2]-&gt;chaincode8order4_4096[x]);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //using the model previously built<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double linear=(-10.667528249636) + -0.0667090106640684 * NumberOfConnectedComponents_1 +9.34910163750235 * ThicknessLengthsCircleHist30 + 30.4471654988069 *CurvaturePerpendicular5Hist100 + 30.5600351874986 * luminanceHist256 +33.6853635484793 * chaincode8order3_512;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double prob_same_writer=1. / (1. + exp(linear));<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //the most probable writer<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(prob_same_writer&gt;maxprob)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; maxprob=prob_same_writer;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; my_questioned_document_features[document_index1]-&gt;writer_id=my_document_features[document_index2]-&gt;writer_id;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; //creating the file to submit<br>&nbsp;&nbsp;&nbsp; //this benchmark does not provide a way of detecting unknown writers<br>&nbsp;&nbsp;&nbsp; &nbsp;std::ofstream submission_file(\"new_benchmark.csv\");<br>&nbsp;&nbsp;&nbsp; &nbsp;submission_file&lt;&lt;\",031,034,035,036,037,038,039,041,042,046,047,048,049,050,051,052,053,054,055,056,057,058,059,060,061,062,063,064,065,066,067,068,069,070,071,072,073,074,077,078,080,081,082,083,084,087,088,090,091,092,093,095,096,unknown\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;int writers[]={31,34,35,36,37,38,39,41,42,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,77,78,80,81,82,83,84,87,88,90,91,92,93,95,96};<br>&nbsp;&nbsp;&nbsp; &nbsp;string questioned_writers[]={\"AA\",\"AB\",\"AC\",\"AD\",\"AE\",\"AF\",\"AG\",\"AH\",\"AI\",\"AJ\",\"AK\",\"AM\",\"AN\",\"AO\",\"AP\",\"AQ\",\"AR\",\"AS\",\"AT\",\"AU\",\"AV\",\"AW\",\"AX\",\"AY\",\"AZ\",\"BA\",\"BB\",\"BC\",\"BD\",\"BE\",\"BF\",\"BG\",\"BH\",\"BI\",\"BK\",\"BL\",\"BM\",\"BN\",\"BO\",\"BP\",\"BQ\",\"BR\",\"BS\",\"BT\",\"BU\",\"BV\",\"BW\",\"BX\",\"BY\",\"BZ\",\"CA\",\"CB\",\"CC\"};<br>&nbsp;&nbsp;&nbsp; &nbsp;for(int document_index1=0;document_index1&lt;53;document_index1++)<br>&nbsp;&nbsp;&nbsp; &nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;submission_file&lt;&lt;questioned_writers[document_index1];<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;bool at_least_one=false;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;for(int writer_index=0;writer_index&lt;53;writer_index++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if(my_questioned_document_features[document_index1]-&gt;writer_id==writers[writer_index])<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;at_least_one=true;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;submission_file&lt;&lt;\",1\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else submission_file&lt;&lt;\",0\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;//unknown writer<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if(at_least_one)submission_file&lt;&lt;\",0\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else submission_file&lt;&lt;\",1\\n\";<br>&nbsp;&nbsp;&nbsp; &nbsp;}<br>&nbsp;&nbsp;&nbsp; &nbsp;submission_file.close();<br><br><br>&nbsp;&nbsp;&nbsp; std::cout&lt;&lt;\"Press a key to exit...\";<br>&nbsp;&nbsp;&nbsp; _getch();<br>}<br mce_bogus=\"1\">",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "2024",
      "postDate": "03/13/2011 17:45:09",
      "content": "Hello,<br><br>When I submit the output of the provided benchmark program, I get an MAE of 0.00931315 whereas the Qatar University Benchmark is 0.00814901. Any reason why they are different? Also the benchmark source code provided below has a lot of errors due to spaces inserted in the text like this : <span id=\"post_text_content_1993\">Distributi on10x10_100, so for convenience I attached the corrected file.<br><br>Regards,<br>Sameh<br></span>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "2025",
      "postDate": "03/13/2011 17:45:09",
      "content": "Thanks for your effort.<br><div style=\"text-align: justify;\" mce_style=\"text-align: justify;\">I have posted two benchmarks and I have chosen the entry which has the lowest MAE.<br>In the other benchmark, there is a slight difference in the way of computing the sums of absolute differences.<br><br></div>PS: I had to create another Kaggle account because I couldn't access to this topic with my other account!<br mce_bogus=\"1\">",
      "rawMarkdown": "",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 2024,
      "author_name": "drsameh",
      "author_url": "",
      "post_date": "03/13/2011 17:45:09",
      "content": "Hello,<br><br>When I submit the output of the provided benchmark program, I get an MAE of 0.00931315 whereas the Qatar University Benchmark is 0.00814901. Any reason why they are different? Also the benchmark source code provided below has a lot of errors due to spaces inserted in the text like this : <span id=\"post_text_content_1993\">Distributi on10x10_100, so for convenience I attached the corrected file.<br><br>Regards,<br>Sameh<br></span>",
      "votes": null,
      "replies": []
    },
    {
      "id": 2025,
      "author_name": "hassaine",
      "author_url": "",
      "post_date": "03/13/2011 17:45:09",
      "content": "Thanks for your effort.<br><div style=\"text-align: justify;\" mce_style=\"text-align: justify;\">I have posted two benchmarks and I have chosen the entry which has the lowest MAE.<br>In the other benchmark, there is a slight difference in the way of computing the sums of absolute differences.<br><br></div>PS: I had to create another Kaggle account because I couldn't access to this topic with my other account!<br mce_bogus=\"1\">",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1993": "",
    "2024": "",
    "2025": ""
  },
  "source": "meta"
}