Changeset 33340

Show
Ignore:
Timestamp:
22.07.2019 16:46:33 (4 weeks ago)
Author:
cpb16
Message:

transferred backup of low res images. Classifiers work as expected. Updated javaAccuracyCalculator, now calculates overall rating correctly. Created gen-50-XX-ValidIDList.txt for the 10% high-res downloads. Done by selecting first 50 of each gen-500-XX-Valid.... .txt. Downloading high-res images after this backup

Location:
other-projects/is-sheet-music-encore/trunk
Files:
11 modified

Legend:

Unmodified
Added
Removed
  • other-projects/is-sheet-music-encore/trunk/Makefile

    r33304 r33340  
    22    cd java-gen-corpus; javac *.java; 
    33 
     4#********** 
     5#HI-RES 
     6#********** 
     7hi-res-download-all: 
     8    ./COMPX520-DOWNLOADER-PNG-10PAGES-hi-res.sh java-gen-corpus/gen-50-MU-hathiValidIDList.txt MU 
     9    ./COMPX520-DOWNLOADER-PNG-10PAGES-hi-res.sh java-gen-corpus/gen-50-BK-hathiValidIDList.txt BK 
     10    ./COMPX520-DOWNLOADER-PNG-10PAGES-hi-res.sh java-gen-corpus/gen-50-SE-hathiValidIDList.txt SE 
     11    ./COMPX520-DOWNLOADER-PNG-10PAGES-hi-res.sh java-gen-corpus/gen-50-MP-hathiValidIDList.txt MP 
    412 
    513###################################### 
     
    715#Prior to running the scripts below 
    816###################################### 
    9  
     17#Run all DOWNLOAD 
     18#NNEEDDD TOO FIIX 
     19gen-500-all: 
     20    make gen-500-MU 
     21    make gen-500-BK 
     22    make gen-500-SE 
     23    make gen-500-MP 
     24    make gen-500-MX 
    1025 
    1126#MUSIC, Including Sheet music 
     
    4661    cd java-gen-corpus; java javaGenFullIDList hathiFull.txt gen-500-MX-hathiFullIDList.txt MX 
    4762    cd java-gen-corpus; java javaGenValidIDList gen-500-MX-hathiFullIDList.txt 500 gen-500-MX-hathiValidIDList.txt 
     63    ./COMPX520-DOWNLOADER-PNG-10PAGES.sh java-gen-corpus/gen-500-MX-hathiValidIDList.txt 
    4864 
    49     ./COMPX520-DOWNLOADER-PNG-10PAGES.sh java-gen-corpus/gen-500-MX-hathiValidIDList.txt 
    5065 
    5166#*********** 
     
    147162    cd image-identification-terminal; less log-houghlinesP-refined-MU.txt 
    148163 
    149 run-houghlineP-refined-corpus: 
    150     cd image-identification-terminal; cd log-all; rm *.txt 
     164run-houghlinesP-refined-corpus: 
     165    #cd image-identification-terminal; cd log-all; rm *.txt 
    151166        #Compile 
    152167    cd image-identification-terminal; javac javaAccuracyCalculator.java 
  • other-projects/is-sheet-music-encore/trunk/image-identification-development/.idea/workspace.xml

    r33326 r33340  
    44    <list default="true" readonly="true" id="9bad4f92-4a7d-46a2-b6f0-94214c9f55cc" name="Default" comment=""> 
    55      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> 
     6      <change beforePath="$PROJECT_DIR$/out/production/image-identification/Main.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/image-identification/Main.class" afterDir="false" /> 
    67      <change beforePath="$PROJECT_DIR$/src/Main.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Main.java" afterDir="false" /> 
    78    </list> 
     
    1920  <component name="FileEditorManager"> 
    2021    <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> 
    21       <file leaf-file-name="Main.java" pinned="false" current-in-tab="true"> 
     22      <file leaf-file-name="Main.java" pinned="false" current-in-tab="false"> 
    2223        <entry file="file://$PROJECT_DIR$/src/Main.java"> 
    2324          <provider selected="true" editor-type-id="text-editor"> 
    24             <state relative-caret-position="130"> 
    25               <caret line="631" column="10" selection-start-line="631" selection-start-column="10" selection-end-line="631" selection-end-column="10" /> 
     25            <state relative-caret-position="1520"> 
     26              <caret line="719" selection-start-line="719" selection-end-line="732" selection-end-column="21" /> 
    2627              <folding> 
    2728                <element signature="imports" expanded="true" /> 
    2829                <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    29                 <element signature="e#4855#4856#0" expanded="true" /> 
    30                 <element signature="e#4889#4890#0" expanded="true" /> 
     30                <element signature="e#5318#5319#0" expanded="true" /> 
     31                <element signature="e#5352#5353#0" expanded="true" /> 
    3132                <element signature="method#removeDuplicates#0;class#Main#0" /> 
    3233                <element signature="method#StandardDeviation#0;class#Main#0" /> 
     
    3839                <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    3940                <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    40                 <element signature="e#14199#14208#0" expanded="true" /> 
    4141                <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     42                <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
     43              </folding> 
     44            </state> 
     45          </provider> 
     46        </entry> 
     47      </file> 
     48      <file leaf-file-name="javaImageClassifier.java" pinned="false" current-in-tab="true"> 
     49        <entry file="file://$PROJECT_DIR$/../image-identification-terminal/javaImageClassifier.java"> 
     50          <provider selected="true" editor-type-id="text-editor"> 
     51            <state relative-caret-position="570"> 
     52              <caret line="96" column="26" selection-start-line="96" selection-start-column="26" selection-end-line="96" selection-end-column="26" /> 
     53              <folding> 
     54                <element signature="imports" expanded="true" /> 
     55                <element signature="n#!!doc;n#javaImageClassifier#0" /> 
     56                <element signature="class#StartAndEndPoint#0;class#javaImageClassifier#0" /> 
     57                <element signature="e#3854#3863#0" /> 
     58                <element signature="method#setup_HoughLinesP#0;class#javaImageClassifier#0" /> 
     59                <element signature="method#classifier_HoughLinesP#0;class#javaImageClassifier#0" /> 
     60                <element signature="method#setup_HoughLinesP_refined#0;class#javaImageClassifier#0" /> 
     61                <element signature="method#classifier_HoughLinesP_refined#0;class#javaImageClassifier#0" /> 
     62                <element signature="method#toBufferedImage#0;class#javaImageClassifier#0" /> 
     63                <element signature="method#ClusterCheck#0;class#javaImageClassifier#0" /> 
     64                <element signature="method#VarianceCalc#0;class#javaImageClassifier#0" /> 
     65                <element signature="method#lineComparison#0;class#javaImageClassifier#0" /> 
     66                <element signature="method#removeDuplicates#0;class#javaImageClassifier#0" /> 
    4267              </folding> 
    4368            </state> 
     
    5782      <list> 
    5883        <option value="$PROJECT_DIR$/src/Main.java" /> 
     84        <option value="$PROJECT_DIR$/../image-identification-terminal/javaImageClassifier.java" /> 
    5985      </list> 
    6086    </option> 
    6187  </component> 
    6288  <component name="ProjectFrameBounds" extendedState="6"> 
    63     <option name="x" value="65" /> 
     89    <option name="x" value="603" /> 
    6490    <option name="y" value="24" /> 
    65     <option name="width" value="928" /> 
    66     <option name="height" value="1056" /> 
     91    <option name="width" value="918" /> 
     92    <option name="height" value="1026" /> 
    6793  </component> 
    6894  <component name="ProjectView"> 
     
    79105    <property name="GenerateAntBuildDialog.outputFileNameProperty" value="image-identification" /> 
    80106    <property name="full.screen.before.presentation.mode" value="false" /> 
    81     <property name="last_opened_file_path" value="$PROJECT_DIR$" /> 
     107    <property name="last_opened_file_path" value="$PROJECT_DIR$/../image-identification-terminal/javaImageClassifier.java" /> 
    82108    <property name="project.structure.last.edited" value="Modules" /> 
    83109    <property name="project.structure.proportion" value="0.15" /> 
     
    154180      <window_info anchor="right" id="Palette" order="4" /> 
    155181      <window_info anchor="bottom" id="TODO" order="10" /> 
    156       <window_info anchor="bottom" id="Messages" order="3" weight="0.32786885" /> 
     182      <window_info anchor="bottom" id="Messages" order="3" weight="0.32719836" /> 
    157183      <window_info anchor="right" id="Palette&#9;" order="1" /> 
    158184      <window_info id="Image Layers" order="4" /> 
     
    160186      <window_info anchor="bottom" id="Event Log" order="1" side_tool="true" /> 
    161187      <window_info anchor="right" id="Maven Projects" order="3" /> 
    162       <window_info anchor="bottom" id="Run" order="6" weight="0.21516393" /> 
     188      <window_info anchor="bottom" id="Run" order="6" weight="0.20245399" /> 
    163189      <window_info anchor="bottom" id="Version Control" order="2" /> 
    164       <window_info anchor="right" id="Coverage" side_tool="true" weight="0.32991913" /> 
    165190      <window_info anchor="bottom" id="Terminal" order="0" weight="0.42638037" /> 
    166191      <window_info id="Capture Tool" order="2" /> 
     
    171196      <window_info id="UI Designer" order="1" /> 
    172197      <window_info anchor="right" id="Theme Preview" order="2" /> 
    173       <window_info anchor="bottom" id="Debug" order="7" weight="0.24487706" /> 
     198      <window_info anchor="bottom" id="Debug" order="7" weight="0.24437627" /> 
    174199      <window_info id="Favorites" order="3" side_tool="true" /> 
    175200      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="7" weight="0.25" /> 
     201      <window_info anchor="right" id="Coverage" order="5" side_tool="true" weight="0.32991913" /> 
    176202      <window_info anchor="bottom" id="Inspection" order="9" weight="0.4" /> 
    177203      <window_info anchor="bottom" id="Inspection Results" order="11" weight="0.32924336" /> 
     
    185211      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="7" weight="0.25" /> 
    186212      <window_info anchor="right" id="Capture Analysis" order="0" /> 
    187       <window_info anchor="bottom" id="Version Control" order="2" /> 
     213      <window_info anchor="bottom" id="Run" order="6" visible="true" weight="0.34662578" /> 
    188214      <window_info anchor="right" id="Theme Preview" order="2" /> 
    189215      <window_info content_ui="combo" id="Project" order="5" visible="true" weight="0.18382749" /> 
     
    192218      <window_info anchor="right" id="Ant Build" order="6" weight="0.25" /> 
    193219      <window_info anchor="bottom" id="TODO" order="10" /> 
    194       <window_info anchor="bottom" id="Run" order="6" visible="true" weight="0.34662578" /> 
     220      <window_info anchor="bottom" id="Version Control" order="2" /> 
    195221      <window_info id="Image Layers" order="4" /> 
    196222      <window_info id="Designer" order="0" /> 
     
    218244        <breakpoints-dialog /> 
    219245      </breakpoints-dialog> 
    220       <option name="time" value="23" /> 
     246      <option name="time" value="27" /> 
    221247    </breakpoint-manager> 
    222248  </component> 
    223249  <component name="editorHistoryManager"> 
     250    <entry file="file://$PROJECT_DIR$/src/Main.java"> 
     251      <provider selected="true" editor-type-id="text-editor"> 
     252        <state relative-caret-position="13661"> 
     253          <caret line="719" selection-start-line="719" selection-end-line="732" selection-end-column="21" /> 
     254          <folding> 
     255            <element signature="imports" expanded="true" /> 
     256            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
     257            <element signature="e#5318#5319#0" expanded="true" /> 
     258            <element signature="e#5352#5353#0" expanded="true" /> 
     259            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     260            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     261            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     262            <element signature="method#lineComparison#0;class#Main#0" /> 
     263            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     264            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     265            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     266            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     267            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     268            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     269            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
     270          </folding> 
     271        </state> 
     272      </provider> 
     273    </entry> 
     274    <entry file="file://$PROJECT_DIR$/../image-identification-terminal/javaImageClassifier.java"> 
     275      <provider selected="true" editor-type-id="text-editor"> 
     276        <state relative-caret-position="4579"> 
     277          <caret line="241" column="78" selection-start-line="241" selection-start-column="78" selection-end-line="241" selection-end-column="78" /> 
     278          <folding> 
     279            <element signature="imports" expanded="true" /> 
     280            <element signature="n#!!doc;n#javaImageClassifier#0" /> 
     281            <element signature="class#StartAndEndPoint#0;class#javaImageClassifier#0" /> 
     282            <element signature="e#3854#3863#0" /> 
     283            <element signature="method#setup_HoughLinesP#0;class#javaImageClassifier#0" /> 
     284            <element signature="method#classifier_HoughLinesP#0;class#javaImageClassifier#0" /> 
     285            <element signature="method#setup_HoughLinesP_refined#0;class#javaImageClassifier#0" /> 
     286            <element signature="method#classifier_HoughLinesP_refined#0;class#javaImageClassifier#0" /> 
     287            <element signature="method#toBufferedImage#0;class#javaImageClassifier#0" /> 
     288            <element signature="method#ClusterCheck#0;class#javaImageClassifier#0" /> 
     289            <element signature="method#VarianceCalc#0;class#javaImageClassifier#0" /> 
     290            <element signature="method#lineComparison#0;class#javaImageClassifier#0" /> 
     291            <element signature="method#removeDuplicates#0;class#javaImageClassifier#0" /> 
     292          </folding> 
     293        </state> 
     294      </provider> 
     295    </entry> 
     296    <entry file="file://$PROJECT_DIR$/src/Main.java"> 
     297      <provider selected="true" editor-type-id="text-editor"> 
     298        <state relative-caret-position="15637"> 
     299          <caret line="823" lean-forward="true" selection-start-line="823" selection-end-line="823" /> 
     300          <folding> 
     301            <element signature="imports" expanded="true" /> 
     302            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
     303            <element signature="e#5318#5319#0" expanded="true" /> 
     304            <element signature="e#5352#5353#0" expanded="true" /> 
     305            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     306            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     307            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     308            <element signature="method#lineComparison#0;class#Main#0" /> 
     309            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     310            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     311            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     312            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     313            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     314            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     315            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
     316          </folding> 
     317        </state> 
     318      </provider> 
     319    </entry> 
     320    <entry file="file://$PROJECT_DIR$/src/Main.java"> 
     321      <provider selected="true" editor-type-id="text-editor"> 
     322        <state relative-caret-position="15523"> 
     323          <caret line="817" column="42" selection-start-line="817" selection-start-column="42" selection-end-line="817" selection-end-column="42" /> 
     324          <folding> 
     325            <element signature="imports" expanded="true" /> 
     326            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
     327            <element signature="e#5318#5319#0" expanded="true" /> 
     328            <element signature="e#5352#5353#0" expanded="true" /> 
     329            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     330            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     331            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     332            <element signature="method#lineComparison#0;class#Main#0" /> 
     333            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     334            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     335            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     336            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     337            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     338            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     339            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
     340          </folding> 
     341        </state> 
     342      </provider> 
     343    </entry> 
     344    <entry file="file://$PROJECT_DIR$/src/Main.java"> 
     345      <provider selected="true" editor-type-id="text-editor"> 
     346        <state relative-caret-position="12255"> 
     347          <caret line="645" selection-start-line="645" selection-end-line="645" /> 
     348          <folding> 
     349            <element signature="imports" expanded="true" /> 
     350            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
     351            <element signature="e#5318#5319#0" expanded="true" /> 
     352            <element signature="e#5352#5353#0" expanded="true" /> 
     353            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     354            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     355            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     356            <element signature="method#lineComparison#0;class#Main#0" /> 
     357            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     358            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     359            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     360            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     361            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     362            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     363            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
     364          </folding> 
     365        </state> 
     366      </provider> 
     367    </entry> 
     368    <entry file="file://$PROJECT_DIR$/src/Main.java"> 
     369      <provider selected="true" editor-type-id="text-editor"> 
     370        <state relative-caret-position="11989"> 
     371          <caret line="631" column="10" selection-start-line="631" selection-start-column="10" selection-end-line="631" selection-end-column="10" /> 
     372          <folding> 
     373            <element signature="imports" expanded="true" /> 
     374            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
     375            <element signature="e#5318#5319#0" expanded="true" /> 
     376            <element signature="e#5352#5353#0" expanded="true" /> 
     377            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     378            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     379            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     380            <element signature="method#lineComparison#0;class#Main#0" /> 
     381            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     382            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     383            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     384            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     385            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     386            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     387            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
     388          </folding> 
     389        </state> 
     390      </provider> 
     391    </entry> 
    224392    <entry file="file://$PROJECT_DIR$/src/Main.java"> 
    225393      <provider selected="true" editor-type-id="text-editor"> 
     
    229397            <element signature="imports" expanded="true" /> 
    230398            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    231             <element signature="e#4855#4856#0" expanded="true" /> 
    232             <element signature="e#4889#4890#0" expanded="true" /> 
    233             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    234             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    235             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    236             <element signature="method#lineComparison#0;class#Main#0" /> 
    237             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    238             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    239             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    240             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    241             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    242             <element signature="e#14199#14208#0" expanded="true" /> 
    243             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     399            <element signature="e#5318#5319#0" expanded="true" /> 
     400            <element signature="e#5352#5353#0" expanded="true" /> 
     401            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     402            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     403            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     404            <element signature="method#lineComparison#0;class#Main#0" /> 
     405            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     406            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     407            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     408            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     409            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     410            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     411            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    244412          </folding> 
    245413        </state> 
     
    253421            <element signature="imports" expanded="true" /> 
    254422            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    255             <element signature="e#4855#4856#0" expanded="true" /> 
    256             <element signature="e#4889#4890#0" expanded="true" /> 
    257             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    258             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    259             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    260             <element signature="method#lineComparison#0;class#Main#0" /> 
    261             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    262             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    263             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    264             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    265             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    266             <element signature="e#14199#14208#0" expanded="true" /> 
    267             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     423            <element signature="e#5318#5319#0" expanded="true" /> 
     424            <element signature="e#5352#5353#0" expanded="true" /> 
     425            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     426            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     427            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     428            <element signature="method#lineComparison#0;class#Main#0" /> 
     429            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     430            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     431            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     432            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     433            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     434            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     435            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    268436          </folding> 
    269437        </state> 
     
    277445            <element signature="imports" expanded="true" /> 
    278446            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    279             <element signature="e#4855#4856#0" expanded="true" /> 
    280             <element signature="e#4889#4890#0" expanded="true" /> 
    281             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    282             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    283             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    284             <element signature="method#lineComparison#0;class#Main#0" /> 
    285             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    286             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    287             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    288             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    289             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    290             <element signature="e#14199#14208#0" expanded="true" /> 
    291             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     447            <element signature="e#5318#5319#0" expanded="true" /> 
     448            <element signature="e#5352#5353#0" expanded="true" /> 
     449            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     450            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     451            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     452            <element signature="method#lineComparison#0;class#Main#0" /> 
     453            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     454            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     455            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     456            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     457            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     458            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     459            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    292460          </folding> 
    293461        </state> 
     
    301469            <element signature="imports" expanded="true" /> 
    302470            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    303             <element signature="e#4855#4856#0" expanded="true" /> 
    304             <element signature="e#4889#4890#0" expanded="true" /> 
    305             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    306             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    307             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    308             <element signature="method#lineComparison#0;class#Main#0" /> 
    309             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    310             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    311             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    312             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    313             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    314             <element signature="e#14199#14208#0" expanded="true" /> 
    315             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     471            <element signature="e#5318#5319#0" expanded="true" /> 
     472            <element signature="e#5352#5353#0" expanded="true" /> 
     473            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     474            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     475            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     476            <element signature="method#lineComparison#0;class#Main#0" /> 
     477            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     478            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     479            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     480            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     481            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     482            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     483            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    316484          </folding> 
    317485        </state> 
     
    325493            <element signature="imports" expanded="true" /> 
    326494            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    327             <element signature="e#4855#4856#0" expanded="true" /> 
    328             <element signature="e#4889#4890#0" expanded="true" /> 
    329             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    330             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    331             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    332             <element signature="method#lineComparison#0;class#Main#0" /> 
    333             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    334             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    335             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    336             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    337             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    338             <element signature="e#14199#14208#0" expanded="true" /> 
    339             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     495            <element signature="e#5318#5319#0" expanded="true" /> 
     496            <element signature="e#5352#5353#0" expanded="true" /> 
     497            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     498            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     499            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     500            <element signature="method#lineComparison#0;class#Main#0" /> 
     501            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     502            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     503            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     504            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     505            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     506            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     507            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    340508          </folding> 
    341509        </state> 
     
    349517            <element signature="imports" expanded="true" /> 
    350518            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    351             <element signature="e#4855#4856#0" expanded="true" /> 
    352             <element signature="e#4889#4890#0" expanded="true" /> 
    353             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    354             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    355             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    356             <element signature="method#lineComparison#0;class#Main#0" /> 
    357             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    358             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    359             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    360             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    361             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    362             <element signature="e#14199#14208#0" expanded="true" /> 
    363             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     519            <element signature="e#5318#5319#0" expanded="true" /> 
     520            <element signature="e#5352#5353#0" expanded="true" /> 
     521            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     522            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     523            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     524            <element signature="method#lineComparison#0;class#Main#0" /> 
     525            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     526            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     527            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     528            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     529            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     530            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     531            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    364532          </folding> 
    365533        </state> 
     
    373541            <element signature="imports" expanded="true" /> 
    374542            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    375             <element signature="e#4855#4856#0" expanded="true" /> 
    376             <element signature="e#4889#4890#0" expanded="true" /> 
    377             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    378             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    379             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    380             <element signature="method#lineComparison#0;class#Main#0" /> 
    381             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    382             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    383             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    384             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    385             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    386             <element signature="e#14199#14208#0" expanded="true" /> 
    387             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     543            <element signature="e#5318#5319#0" expanded="true" /> 
     544            <element signature="e#5352#5353#0" expanded="true" /> 
     545            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     546            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     547            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     548            <element signature="method#lineComparison#0;class#Main#0" /> 
     549            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     550            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     551            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     552            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     553            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     554            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     555            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    388556          </folding> 
    389557        </state> 
     
    397565            <element signature="imports" expanded="true" /> 
    398566            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    399             <element signature="e#4855#4856#0" expanded="true" /> 
    400             <element signature="e#4889#4890#0" expanded="true" /> 
    401             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    402             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    403             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    404             <element signature="method#lineComparison#0;class#Main#0" /> 
    405             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    406             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    407             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    408             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    409             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    410             <element signature="e#14199#14208#0" expanded="true" /> 
    411             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     567            <element signature="e#5318#5319#0" expanded="true" /> 
     568            <element signature="e#5352#5353#0" expanded="true" /> 
     569            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     570            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     571            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     572            <element signature="method#lineComparison#0;class#Main#0" /> 
     573            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     574            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     575            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     576            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     577            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     578            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     579            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    412580          </folding> 
    413581        </state> 
     
    421589            <element signature="imports" expanded="true" /> 
    422590            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    423             <element signature="e#4855#4856#0" expanded="true" /> 
    424             <element signature="e#4889#4890#0" expanded="true" /> 
    425             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    426             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    427             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    428             <element signature="method#lineComparison#0;class#Main#0" /> 
    429             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    430             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    431             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    432             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    433             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    434             <element signature="e#14199#14208#0" expanded="true" /> 
    435             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     591            <element signature="e#5318#5319#0" expanded="true" /> 
     592            <element signature="e#5352#5353#0" expanded="true" /> 
     593            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     594            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     595            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     596            <element signature="method#lineComparison#0;class#Main#0" /> 
     597            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     598            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     599            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     600            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     601            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     602            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     603            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    436604          </folding> 
    437605        </state> 
     
    445613            <element signature="imports" expanded="true" /> 
    446614            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    447             <element signature="e#4855#4856#0" expanded="true" /> 
    448             <element signature="e#4889#4890#0" expanded="true" /> 
    449             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    450             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    451             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    452             <element signature="method#lineComparison#0;class#Main#0" /> 
    453             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    454             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    455             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    456             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    457             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    458             <element signature="e#14199#14208#0" expanded="true" /> 
    459             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     615            <element signature="e#5318#5319#0" expanded="true" /> 
     616            <element signature="e#5352#5353#0" expanded="true" /> 
     617            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     618            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     619            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     620            <element signature="method#lineComparison#0;class#Main#0" /> 
     621            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     622            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     623            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     624            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     625            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     626            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     627            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    460628          </folding> 
    461629        </state> 
     
    469637            <element signature="imports" expanded="true" /> 
    470638            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    471             <element signature="e#4855#4856#0" expanded="true" /> 
    472             <element signature="e#4889#4890#0" expanded="true" /> 
    473             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    474             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    475             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    476             <element signature="method#lineComparison#0;class#Main#0" /> 
    477             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    478             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    479             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    480             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    481             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    482             <element signature="e#14199#14208#0" expanded="true" /> 
    483             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     639            <element signature="e#5318#5319#0" expanded="true" /> 
     640            <element signature="e#5352#5353#0" expanded="true" /> 
     641            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     642            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     643            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     644            <element signature="method#lineComparison#0;class#Main#0" /> 
     645            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     646            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     647            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     648            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     649            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     650            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     651            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    484652          </folding> 
    485653        </state> 
     
    493661            <element signature="imports" expanded="true" /> 
    494662            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    495             <element signature="e#4855#4856#0" expanded="true" /> 
    496             <element signature="e#4889#4890#0" expanded="true" /> 
    497             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    498             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    499             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    500             <element signature="method#lineComparison#0;class#Main#0" /> 
    501             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    502             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    503             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    504             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    505             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    506             <element signature="e#14199#14208#0" expanded="true" /> 
    507             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     663            <element signature="e#5318#5319#0" expanded="true" /> 
     664            <element signature="e#5352#5353#0" expanded="true" /> 
     665            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     666            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     667            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     668            <element signature="method#lineComparison#0;class#Main#0" /> 
     669            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     670            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     671            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     672            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     673            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     674            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     675            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    508676          </folding> 
    509677        </state> 
     
    517685            <element signature="imports" expanded="true" /> 
    518686            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    519             <element signature="e#4855#4856#0" expanded="true" /> 
    520             <element signature="e#4889#4890#0" expanded="true" /> 
    521             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    522             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    523             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    524             <element signature="method#lineComparison#0;class#Main#0" /> 
    525             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    526             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    527             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    528             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    529             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    530             <element signature="e#14199#14208#0" expanded="true" /> 
    531             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     687            <element signature="e#5318#5319#0" expanded="true" /> 
     688            <element signature="e#5352#5353#0" expanded="true" /> 
     689            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     690            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     691            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     692            <element signature="method#lineComparison#0;class#Main#0" /> 
     693            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     694            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     695            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     696            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     697            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     698            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     699            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    532700          </folding> 
    533701        </state> 
     
    541709            <element signature="imports" expanded="true" /> 
    542710            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    543             <element signature="e#4855#4856#0" expanded="true" /> 
    544             <element signature="e#4889#4890#0" expanded="true" /> 
    545             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    546             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    547             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    548             <element signature="method#lineComparison#0;class#Main#0" /> 
    549             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    550             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    551             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    552             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    553             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    554             <element signature="e#14199#14208#0" expanded="true" /> 
    555             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     711            <element signature="e#5318#5319#0" expanded="true" /> 
     712            <element signature="e#5352#5353#0" expanded="true" /> 
     713            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     714            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     715            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     716            <element signature="method#lineComparison#0;class#Main#0" /> 
     717            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     718            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     719            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     720            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     721            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     722            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     723            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    556724          </folding> 
    557725        </state> 
     
    565733            <element signature="imports" expanded="true" /> 
    566734            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    567             <element signature="e#4855#4856#0" expanded="true" /> 
    568             <element signature="e#4889#4890#0" expanded="true" /> 
    569             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    570             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    571             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    572             <element signature="method#lineComparison#0;class#Main#0" /> 
    573             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    574             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    575             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    576             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    577             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    578             <element signature="e#14199#14208#0" expanded="true" /> 
    579             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     735            <element signature="e#5318#5319#0" expanded="true" /> 
     736            <element signature="e#5352#5353#0" expanded="true" /> 
     737            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     738            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     739            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     740            <element signature="method#lineComparison#0;class#Main#0" /> 
     741            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     742            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     743            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     744            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     745            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     746            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     747            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    580748          </folding> 
    581749        </state> 
     
    589757            <element signature="imports" expanded="true" /> 
    590758            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    591             <element signature="e#4855#4856#0" expanded="true" /> 
    592             <element signature="e#4889#4890#0" expanded="true" /> 
    593             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    594             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    595             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    596             <element signature="method#lineComparison#0;class#Main#0" /> 
    597             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    598             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    599             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    600             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    601             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    602             <element signature="e#14199#14208#0" expanded="true" /> 
    603             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     759            <element signature="e#5318#5319#0" expanded="true" /> 
     760            <element signature="e#5352#5353#0" expanded="true" /> 
     761            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     762            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     763            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     764            <element signature="method#lineComparison#0;class#Main#0" /> 
     765            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     766            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     767            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     768            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     769            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     770            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     771            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    604772          </folding> 
    605773        </state> 
     
    613781            <element signature="imports" expanded="true" /> 
    614782            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    615             <element signature="e#4855#4856#0" expanded="true" /> 
    616             <element signature="e#4889#4890#0" expanded="true" /> 
    617             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    618             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    619             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    620             <element signature="method#lineComparison#0;class#Main#0" /> 
    621             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    622             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    623             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    624             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    625             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    626             <element signature="e#14199#14208#0" expanded="true" /> 
    627             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     783            <element signature="e#5318#5319#0" expanded="true" /> 
     784            <element signature="e#5352#5353#0" expanded="true" /> 
     785            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     786            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     787            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     788            <element signature="method#lineComparison#0;class#Main#0" /> 
     789            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     790            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     791            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     792            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     793            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     794            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     795            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    628796          </folding> 
    629797        </state> 
     
    637805            <element signature="imports" expanded="true" /> 
    638806            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    639             <element signature="e#4855#4856#0" expanded="true" /> 
    640             <element signature="e#4889#4890#0" expanded="true" /> 
    641             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    642             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    643             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    644             <element signature="method#lineComparison#0;class#Main#0" /> 
    645             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    646             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    647             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    648             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    649             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    650             <element signature="e#14199#14208#0" expanded="true" /> 
    651             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     807            <element signature="e#5318#5319#0" expanded="true" /> 
     808            <element signature="e#5352#5353#0" expanded="true" /> 
     809            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     810            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     811            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     812            <element signature="method#lineComparison#0;class#Main#0" /> 
     813            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     814            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     815            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     816            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     817            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     818            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     819            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    652820          </folding> 
    653821        </state> 
     
    661829            <element signature="imports" expanded="true" /> 
    662830            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    663             <element signature="e#4855#4856#0" expanded="true" /> 
    664             <element signature="e#4889#4890#0" expanded="true" /> 
    665             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    666             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    667             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    668             <element signature="method#lineComparison#0;class#Main#0" /> 
    669             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    670             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    671             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    672             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    673             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    674             <element signature="e#14199#14208#0" expanded="true" /> 
    675             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     831            <element signature="e#5318#5319#0" expanded="true" /> 
     832            <element signature="e#5352#5353#0" expanded="true" /> 
     833            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     834            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     835            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     836            <element signature="method#lineComparison#0;class#Main#0" /> 
     837            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     838            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     839            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     840            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     841            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     842            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     843            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    676844          </folding> 
    677845        </state> 
     
    685853            <element signature="imports" expanded="true" /> 
    686854            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    687             <element signature="e#4855#4856#0" expanded="true" /> 
    688             <element signature="e#4889#4890#0" expanded="true" /> 
    689             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    690             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    691             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    692             <element signature="method#lineComparison#0;class#Main#0" /> 
    693             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    694             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    695             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    696             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    697             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    698             <element signature="e#14199#14208#0" expanded="true" /> 
    699             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     855            <element signature="e#5318#5319#0" expanded="true" /> 
     856            <element signature="e#5352#5353#0" expanded="true" /> 
     857            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     858            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     859            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     860            <element signature="method#lineComparison#0;class#Main#0" /> 
     861            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     862            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     863            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     864            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     865            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     866            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     867            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    700868          </folding> 
    701869        </state> 
     
    709877            <element signature="imports" expanded="true" /> 
    710878            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    711             <element signature="e#4855#4856#0" expanded="true" /> 
    712             <element signature="e#4889#4890#0" expanded="true" /> 
    713             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    714             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    715             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    716             <element signature="method#lineComparison#0;class#Main#0" /> 
    717             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    718             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    719             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    720             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    721             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    722             <element signature="e#14199#14208#0" expanded="true" /> 
    723             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     879            <element signature="e#5318#5319#0" expanded="true" /> 
     880            <element signature="e#5352#5353#0" expanded="true" /> 
     881            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     882            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     883            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     884            <element signature="method#lineComparison#0;class#Main#0" /> 
     885            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     886            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     887            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     888            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     889            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     890            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     891            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    724892          </folding> 
    725893        </state> 
     
    733901            <element signature="imports" expanded="true" /> 
    734902            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    735             <element signature="e#4855#4856#0" expanded="true" /> 
    736             <element signature="e#4889#4890#0" expanded="true" /> 
    737             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    738             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    739             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    740             <element signature="method#lineComparison#0;class#Main#0" /> 
    741             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    742             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    743             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    744             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    745             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    746             <element signature="e#14199#14208#0" expanded="true" /> 
    747             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     903            <element signature="e#5318#5319#0" expanded="true" /> 
     904            <element signature="e#5352#5353#0" expanded="true" /> 
     905            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     906            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     907            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     908            <element signature="method#lineComparison#0;class#Main#0" /> 
     909            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     910            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     911            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     912            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     913            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     914            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     915            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    748916          </folding> 
    749917        </state> 
     
    757925            <element signature="imports" expanded="true" /> 
    758926            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    759             <element signature="e#4855#4856#0" expanded="true" /> 
    760             <element signature="e#4889#4890#0" expanded="true" /> 
    761             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    762             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    763             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    764             <element signature="method#lineComparison#0;class#Main#0" /> 
    765             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    766             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    767             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    768             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    769             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    770             <element signature="e#14199#14208#0" expanded="true" /> 
    771             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     927            <element signature="e#5318#5319#0" expanded="true" /> 
     928            <element signature="e#5352#5353#0" expanded="true" /> 
     929            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     930            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     931            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     932            <element signature="method#lineComparison#0;class#Main#0" /> 
     933            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     934            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     935            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     936            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     937            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     938            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     939            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    772940          </folding> 
    773941        </state> 
     
    781949            <element signature="imports" expanded="true" /> 
    782950            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    783             <element signature="e#4855#4856#0" expanded="true" /> 
    784             <element signature="e#4889#4890#0" expanded="true" /> 
    785             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    786             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    787             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    788             <element signature="method#lineComparison#0;class#Main#0" /> 
    789             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    790             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    791             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    792             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    793             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    794             <element signature="e#14199#14208#0" expanded="true" /> 
    795             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     951            <element signature="e#5318#5319#0" expanded="true" /> 
     952            <element signature="e#5352#5353#0" expanded="true" /> 
     953            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     954            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     955            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     956            <element signature="method#lineComparison#0;class#Main#0" /> 
     957            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     958            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     959            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     960            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     961            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     962            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     963            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    796964          </folding> 
    797965        </state> 
     
    805973            <element signature="imports" expanded="true" /> 
    806974            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    807             <element signature="e#4855#4856#0" expanded="true" /> 
    808             <element signature="e#4889#4890#0" expanded="true" /> 
    809             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    810             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    811             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    812             <element signature="method#lineComparison#0;class#Main#0" /> 
    813             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    814             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    815             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    816             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    817             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    818             <element signature="e#14199#14208#0" expanded="true" /> 
    819             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     975            <element signature="e#5318#5319#0" expanded="true" /> 
     976            <element signature="e#5352#5353#0" expanded="true" /> 
     977            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     978            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     979            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     980            <element signature="method#lineComparison#0;class#Main#0" /> 
     981            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     982            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     983            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     984            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     985            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     986            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     987            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    820988          </folding> 
    821989        </state> 
     
    829997            <element signature="imports" expanded="true" /> 
    830998            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    831             <element signature="e#4855#4856#0" expanded="true" /> 
    832             <element signature="e#4889#4890#0" expanded="true" /> 
    833             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    834             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    835             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    836             <element signature="method#lineComparison#0;class#Main#0" /> 
    837             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    838             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    839             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    840             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    841             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    842             <element signature="e#14199#14208#0" expanded="true" /> 
    843             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     999            <element signature="e#5318#5319#0" expanded="true" /> 
     1000            <element signature="e#5352#5353#0" expanded="true" /> 
     1001            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1002            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1003            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1004            <element signature="method#lineComparison#0;class#Main#0" /> 
     1005            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1006            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1007            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1008            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1009            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1010            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1011            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    8441012          </folding> 
    8451013        </state> 
     
    8531021            <element signature="imports" expanded="true" /> 
    8541022            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    855             <element signature="e#4855#4856#0" expanded="true" /> 
    856             <element signature="e#4889#4890#0" expanded="true" /> 
    857             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    858             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    859             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    860             <element signature="method#lineComparison#0;class#Main#0" /> 
    861             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    862             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    863             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    864             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    865             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    866             <element signature="e#14199#14208#0" expanded="true" /> 
    867             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1023            <element signature="e#5318#5319#0" expanded="true" /> 
     1024            <element signature="e#5352#5353#0" expanded="true" /> 
     1025            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1026            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1027            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1028            <element signature="method#lineComparison#0;class#Main#0" /> 
     1029            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1030            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1031            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1032            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1033            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1034            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1035            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    8681036          </folding> 
    8691037        </state> 
     
    8771045            <element signature="imports" expanded="true" /> 
    8781046            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    879             <element signature="e#4855#4856#0" expanded="true" /> 
    880             <element signature="e#4889#4890#0" expanded="true" /> 
    881             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    882             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    883             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    884             <element signature="method#lineComparison#0;class#Main#0" /> 
    885             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    886             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    887             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    888             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    889             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    890             <element signature="e#14199#14208#0" expanded="true" /> 
    891             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1047            <element signature="e#5318#5319#0" expanded="true" /> 
     1048            <element signature="e#5352#5353#0" expanded="true" /> 
     1049            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1050            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1051            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1052            <element signature="method#lineComparison#0;class#Main#0" /> 
     1053            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1054            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1055            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1056            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1057            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1058            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1059            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    8921060          </folding> 
    8931061        </state> 
     
    9011069            <element signature="imports" expanded="true" /> 
    9021070            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    903             <element signature="e#4855#4856#0" expanded="true" /> 
    904             <element signature="e#4889#4890#0" expanded="true" /> 
    905             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    906             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    907             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    908             <element signature="method#lineComparison#0;class#Main#0" /> 
    909             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    910             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    911             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    912             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    913             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    914             <element signature="e#14199#14208#0" expanded="true" /> 
    915             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1071            <element signature="e#5318#5319#0" expanded="true" /> 
     1072            <element signature="e#5352#5353#0" expanded="true" /> 
     1073            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1074            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1075            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1076            <element signature="method#lineComparison#0;class#Main#0" /> 
     1077            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1078            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1079            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1080            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1081            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1082            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1083            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    9161084          </folding> 
    9171085        </state> 
     
    9251093            <element signature="imports" expanded="true" /> 
    9261094            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    927             <element signature="e#4855#4856#0" expanded="true" /> 
    928             <element signature="e#4889#4890#0" expanded="true" /> 
    929             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    930             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    931             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    932             <element signature="method#lineComparison#0;class#Main#0" /> 
    933             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    934             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    935             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    936             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    937             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    938             <element signature="e#14199#14208#0" expanded="true" /> 
    939             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1095            <element signature="e#5318#5319#0" expanded="true" /> 
     1096            <element signature="e#5352#5353#0" expanded="true" /> 
     1097            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1098            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1099            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1100            <element signature="method#lineComparison#0;class#Main#0" /> 
     1101            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1102            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1103            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1104            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1105            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1106            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1107            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    9401108          </folding> 
    9411109        </state> 
     
    9491117            <element signature="imports" expanded="true" /> 
    9501118            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    951             <element signature="e#4855#4856#0" expanded="true" /> 
    952             <element signature="e#4889#4890#0" expanded="true" /> 
    953             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    954             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    955             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    956             <element signature="method#lineComparison#0;class#Main#0" /> 
    957             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    958             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    959             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    960             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    961             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    962             <element signature="e#14199#14208#0" expanded="true" /> 
    963             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1119            <element signature="e#5318#5319#0" expanded="true" /> 
     1120            <element signature="e#5352#5353#0" expanded="true" /> 
     1121            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1122            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1123            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1124            <element signature="method#lineComparison#0;class#Main#0" /> 
     1125            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1126            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1127            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1128            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1129            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1130            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1131            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    9641132          </folding> 
    9651133        </state> 
     
    9731141            <element signature="imports" expanded="true" /> 
    9741142            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    975             <element signature="e#4855#4856#0" expanded="true" /> 
    976             <element signature="e#4889#4890#0" expanded="true" /> 
    977             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    978             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    979             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    980             <element signature="method#lineComparison#0;class#Main#0" /> 
    981             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    982             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    983             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    984             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    985             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    986             <element signature="e#14199#14208#0" expanded="true" /> 
    987             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1143            <element signature="e#5318#5319#0" expanded="true" /> 
     1144            <element signature="e#5352#5353#0" expanded="true" /> 
     1145            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1146            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1147            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1148            <element signature="method#lineComparison#0;class#Main#0" /> 
     1149            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1150            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1151            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1152            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1153            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1154            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1155            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    9881156          </folding> 
    9891157        </state> 
     
    9971165            <element signature="imports" expanded="true" /> 
    9981166            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    999             <element signature="e#4855#4856#0" expanded="true" /> 
    1000             <element signature="e#4889#4890#0" expanded="true" /> 
    1001             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    1002             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    1003             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    1004             <element signature="method#lineComparison#0;class#Main#0" /> 
    1005             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    1006             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    1007             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    1008             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    1009             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    1010             <element signature="e#14199#14208#0" expanded="true" /> 
    1011             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1167            <element signature="e#5318#5319#0" expanded="true" /> 
     1168            <element signature="e#5352#5353#0" expanded="true" /> 
     1169            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1170            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1171            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1172            <element signature="method#lineComparison#0;class#Main#0" /> 
     1173            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1174            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1175            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1176            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1177            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1178            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1179            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    10121180          </folding> 
    10131181        </state> 
     
    10211189            <element signature="imports" expanded="true" /> 
    10221190            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    1023             <element signature="e#4855#4856#0" expanded="true" /> 
    1024             <element signature="e#4889#4890#0" expanded="true" /> 
    1025             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    1026             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    1027             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    1028             <element signature="method#lineComparison#0;class#Main#0" /> 
    1029             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    1030             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    1031             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    1032             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    1033             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    1034             <element signature="e#14199#14208#0" expanded="true" /> 
    1035             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1191            <element signature="e#5318#5319#0" expanded="true" /> 
     1192            <element signature="e#5352#5353#0" expanded="true" /> 
     1193            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1194            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1195            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1196            <element signature="method#lineComparison#0;class#Main#0" /> 
     1197            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1198            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1199            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1200            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1201            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1202            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1203            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    10361204          </folding> 
    10371205        </state> 
     
    10451213            <element signature="imports" expanded="true" /> 
    10461214            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    1047             <element signature="e#4855#4856#0" expanded="true" /> 
    1048             <element signature="e#4889#4890#0" expanded="true" /> 
    1049             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    1050             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    1051             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    1052             <element signature="method#lineComparison#0;class#Main#0" /> 
    1053             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    1054             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    1055             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    1056             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    1057             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    1058             <element signature="e#14199#14208#0" expanded="true" /> 
    1059             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1215            <element signature="e#5318#5319#0" expanded="true" /> 
     1216            <element signature="e#5352#5353#0" expanded="true" /> 
     1217            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1218            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1219            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1220            <element signature="method#lineComparison#0;class#Main#0" /> 
     1221            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1222            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1223            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1224            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1225            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1226            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1227            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
    10601228          </folding> 
    10611229        </state> 
     
    11061274    <entry file="file://$PROJECT_DIR$/src/Main.java"> 
    11071275      <provider selected="true" editor-type-id="text-editor"> 
    1108         <state relative-caret-position="130"> 
    1109           <caret line="631" column="10" selection-start-line="631" selection-start-column="10" selection-end-line="631" selection-end-column="10" /> 
    1110           <folding> 
    1111             <element signature="imports" expanded="true" /> 
    1112             <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
    1113             <element signature="e#4855#4856#0" expanded="true" /> 
    1114             <element signature="e#4889#4890#0" expanded="true" /> 
    1115             <element signature="method#removeDuplicates#0;class#Main#0" /> 
    1116             <element signature="method#StandardDeviation#0;class#Main#0" /> 
    1117             <element signature="method#VarianceCalc#0;class#Main#0" /> 
    1118             <element signature="method#lineComparison#0;class#Main#0" /> 
    1119             <element signature="method#ClusterCheck#0;class#Main#0" /> 
    1120             <element signature="method#toBufferedImage#0;class#Main#0" /> 
    1121             <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
    1122             <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
    1123             <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
    1124             <element signature="e#14199#14208#0" expanded="true" /> 
    1125             <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1276        <state relative-caret-position="1520"> 
     1277          <caret line="719" selection-start-line="719" selection-end-line="732" selection-end-column="21" /> 
     1278          <folding> 
     1279            <element signature="imports" expanded="true" /> 
     1280            <element signature="class#StartAndEndPoint#0;class#Main#0" /> 
     1281            <element signature="e#5318#5319#0" expanded="true" /> 
     1282            <element signature="e#5352#5353#0" expanded="true" /> 
     1283            <element signature="method#removeDuplicates#0;class#Main#0" /> 
     1284            <element signature="method#StandardDeviation#0;class#Main#0" /> 
     1285            <element signature="method#VarianceCalc#0;class#Main#0" /> 
     1286            <element signature="method#lineComparison#0;class#Main#0" /> 
     1287            <element signature="method#ClusterCheck#0;class#Main#0" /> 
     1288            <element signature="method#toBufferedImage#0;class#Main#0" /> 
     1289            <element signature="method#ClassifierPixelCount#0;class#Main#0" /> 
     1290            <element signature="method#ClassifierLineCount#0;class#Main#0" /> 
     1291            <element signature="method#ClassifierLineClusterOLD#0;class#Main#0" /> 
     1292            <element signature="method#ClassifierLineCluster#0;class#Main#0" /> 
     1293            <element signature="method#ClassifierLineClusterPt#0;class#Main#0" /> 
     1294          </folding> 
     1295        </state> 
     1296      </provider> 
     1297    </entry> 
     1298    <entry file="file://$PROJECT_DIR$/../image-identification-terminal/javaImageClassifier.java"> 
     1299      <provider selected="true" editor-type-id="text-editor"> 
     1300        <state relative-caret-position="570"> 
     1301          <caret line="96" column="26" selection-start-line="96" selection-start-column="26" selection-end-line="96" selection-end-column="26" /> 
     1302          <folding> 
     1303            <element signature="imports" expanded="true" /> 
     1304            <element signature="n#!!doc;n#javaImageClassifier#0" /> 
     1305            <element signature="class#StartAndEndPoint#0;class#javaImageClassifier#0" /> 
     1306            <element signature="e#3854#3863#0" /> 
     1307            <element signature="method#setup_HoughLinesP#0;class#javaImageClassifier#0" /> 
     1308            <element signature="method#classifier_HoughLinesP#0;class#javaImageClassifier#0" /> 
     1309            <element signature="method#setup_HoughLinesP_refined#0;class#javaImageClassifier#0" /> 
     1310            <element signature="method#classifier_HoughLinesP_refined#0;class#javaImageClassifier#0" /> 
     1311            <element signature="method#toBufferedImage#0;class#javaImageClassifier#0" /> 
     1312            <element signature="method#ClusterCheck#0;class#javaImageClassifier#0" /> 
     1313            <element signature="method#VarianceCalc#0;class#javaImageClassifier#0" /> 
     1314            <element signature="method#lineComparison#0;class#javaImageClassifier#0" /> 
     1315            <element signature="method#removeDuplicates#0;class#javaImageClassifier#0" /> 
    11261316          </folding> 
    11271317        </state> 
  • other-projects/is-sheet-music-encore/trunk/image-identification-development/src/Main.java

    r33326 r33340  
    144144            return "Start: " + _p1 + " End: " + _p2; 
    145145        } 
    146         /* 
    147         //CompareToOverride 
    148         //Compares start point y co ordinates of input PointArray 
    149         //With this. start point y co ordinate 
    150         @Override 
    151         public double compareTo(StartAndEndPoint comparePointArray){ 
    152             Point comparePoint = (comparePointArray.getP1()); 
    153             return (this.getP1().y) - (comparePoint.y); 
    154         } 
    155         */ 
    156     } 
     146 
     147    } 
     148 
    157149    public static <T> ArrayList<T> removeDuplicates(ArrayList<T> list) { 
    158150        //DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED 
     
    211203    } 
    212204    public static Boolean lineComparison(double baseLineS, double compareLineS, double compareLineE ){ 
     205        //System.out.print("Comparing baseLineS: " + baseLineS + " with compareLineE: " + compareLineE + " and compareLineS: " + compareLineS); 
    213206        if(baseLineS < compareLineE && baseLineS > compareLineS){ 
    214207            return true; 
     
    231224            Boolean consistent = false; 
    232225            if (variance <= CLUSTER_DISTANCE_MAX && variance > CLUSTER_DISTANCE_MIN) { 
     226 
    233227                for (int i = 0; i < parseArray.length - 1; i++) { 
    234228                    //System.out.println(i); 
     
    658652                            //If it SD is less than 5 then it is considered to be a cluster of lines. 
    659653                            if(ClusterCheck(tempPtArray)){ 
    660                                 //System.out.println("tempArray PT: "+tempArray[0] + " , " + tempArray[1] + " , " + tempArray[2] + " , " + tempArray[3]); 
    661                                 //System.out.println("tempArray SD: " + StandardDeviation(tempArray)); 
     654                                //System.out.println("tempArray PT: "+tempPtArray[0] + " , " + tempPtArray[1] + " , " + tempPtArray[2] + " , " + tempPtArray[3]); 
    662655                                //Store array 
    663656                                clusterPtArray.add(tempPtArray); 
     
    671664                                    //break 
    672665                                    Thread.sleep(2000); 
    673                                     System.out.println("End of closeLinePts -> break , i = " + i+ " closeLineYpos size= " + closeLinePts.size()); 
     666                                    //System.out.println("End of closeLinePts -> break , i = " + i+ " closeLineYpos size= " + closeLinePts.size()); 
    674667                                    break; 
    675668                                } 
     
    678671                    } 
    679672                } 
    680                 /* 
    681                 System.out.println("Cluster Coordinates: "); 
    682                 for(double[] items : clusterArray){ 
    683                     for(int i = 0; i <items.length; i++){ 
    684                         System.out.println("ITEMS: "+ items[i]); 
    685                     } 
    686                 } 
    687                 */ 
     673 
     674                /*System.out.println("Cluster Coordinates: "); 
     675                for(StartAndEndPoint[] items : clusterPtArray){ 
     676                    for(int i = 0; i <clusterPtArray.size(); i++){ 
     677                        System.out.println("ITEMS: "+ items); 
     678                    } 
     679                }*/ 
     680 
    688681                //Setup Drawing clusters found. 
    689682                //For every pt given the input array 
     
    723716    } 
    724717 
     718    //SUPER CLASSIFIER FUNCTIONS 
     719    private static boolean LineCountOrCluster(int lineCount, ArrayList<StartAndEndPoint> linePointsArray, Mat clustersFoundRGB){ 
     720        ArrayList lineClusterResult = ClassifierLineClusterPt(linePointsArray, clustersFoundRGB); 
     721 
     722 
     723        //String test = ClassifierLineClusterPt(linePointsArray, clustersFoundRGB).get(0).toString(); 
     724        if(ClassifierLineCount(lineCount) == true){ 
     725            System.out.println("LineCount classifier Successful: " +   '\t' +"LinesFound: " + lineCount); 
     726            return true; 
     727        } 
     728        else if(lineClusterResult.get(0).toString() == "true"){ 
     729            System.out.println("LineCluster classifier Successful: " + '\t' + "LinesFound: " + lineCount + '\t' + "ClustersFound: " + lineClusterResult.get(1)); 
     730 
     731            return  false; 
     732        } 
     733        return false; 
     734    } 
     735 
    725736    //MAIN 
    726737    public static void main(String[] args) { 
     
    735746            Mat edgesDetectedRGB = new Mat(); 
    736747            Mat clustersFoundRGB = new Mat(); 
    737             String directory = "/Scratch/cpb16/is-sheet-music-encore/download-images/MU/"; 
     748            String directory = "/Scratch/cpb16/is-sheet-music-encore/lowres-download-images/MU/"; 
    738749            //!!!!!!!!!!!!!!!!!!!!!!!!!!!NOT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
    739750            //mdp.39015097852365-2.png 176 lines    Contents page. 
    740751            //mdp.39015097852555-3.png 76  lines 
    741             //String default_file = directory+"SheetMusic/coo.31924062612282-9.png"; 
    742             //String default_file ="TestImages/NotNot/mdp.39015080972303-3.png"; 
     752            //!!!!!!!!!!!!!!!!!!!!!!!!!!!NOTNOT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
     753            //coo.31924062612282-9.png 8   lines 
     754            //String default_file = directory+"NotSheetMusic/coo.31924062612282-9.png"; 
     755            //String default_file = directory+"NotSheetMusic/mdp.39015097852365-2.png"; 
     756            String default_file ="TestImages/NotNot/mdp.39015080972303-3.png"; 
    743757 
    744758 
    745759            //System.out.println(default_file); 
    746             String default_file = "TestImages/NotSheetMusic01.png"; 
     760            //String default_file = "TestImages/NotSheetMusic01.png"; 
    747761            //String default_file = "TestImages/NotSheetMusic02.png"; 
    748762            //String default_file = "TestImages/SheetMusic01.png"; 
     
    805819 
    806820 
    807             System.out.println("LINE COUNT RESULT:   " +  ClassifierLineCount(horizontalLineCount) + '\t' +"LinesFound: " + horizontalLineCount); //COUNT OF LINES CLASSIFICATION 
     821            //System.out.println("LINE COUNT RESULT:   " +  ClassifierLineCount(horizontalLineCount) + '\t' +"LinesFound: " + horizontalLineCount); //COUNT OF LINES CLASSIFICATION 
    808822            //System.out.println("LINE CLUSTER RESULT: " +  ClassifierLineClusterOLD(toBeClassifiedImg).get(0) + '\t' + "LinesFound: " + ClassifierLineClusterOLD(toBeClassifiedImg).get(1) + '\t' + "ClustersFound: " + ClassifierLineClusterOLD(toBeClassifiedImg).get(2)); 
    809             System.out.println("NEW CLUSTER RESULTS: " +  ClassifierLineClusterPt(pointArrayList,clustersFoundRGB).get(0) + '\t' + "LinesFound: " + horizontalLineCount + '\t' + "ClustersFound: " + ClassifierLineClusterPt(pointArrayList,clustersFoundRGB).get(1)); 
     823            //System.out.println("NEW CLUSTER RESULTS: " +  ClassifierLineClusterPt(pointArrayList,clustersFoundRGB).get(0) + '\t' + "LinesFound: " + horizontalLineCount + '\t' + "ClustersFound: " + ClassifierLineClusterPt(pointArrayList,clustersFoundRGB).get(1)); 
    810824            //System.out.println(ClassifierLineClusterPt(pointArrayList, clustersFoundRGB)); 
     825 
     826            System.out.println("TEST: " + LineCountOrCluster(horizontalLineCount, pointArrayList, clustersFoundRGB)); 
    811827 
    812828            // Wait and Exit 
  • other-projects/is-sheet-music-encore/trunk/image-identification-terminal/Makefile

    r33170 r33340  
    1818    rm results.txt 
    1919 
     20testrun-classifier-cluster-single: 
     21    javac -cp /Scratch/cpb16/opencv-3.4.2/build/bin/opencv-342.jar javaImageClassifier.java; 
     22    ./runClassifier.sh TestImages/test-coo.31924062612282-9.png cluster test.png -single 
     23    echo "Displaying javaImageClassifier output" 
     24        #Display output of javaImageClassifier 
     25    less log.txt 
     26        #Calculate the Accuracy of the classifier 
     27    java javaAccuracyCalculator log.txt houghlinesP results.txt 
     28        #Display output 
     29    less results.txt 
     30    rm log.txt 
     31    rm results.txt 
    2032 
  • other-projects/is-sheet-music-encore/trunk/image-identification-terminal/javaAccuracyCalculator.java

    r33304 r33340  
    7070                 
    7171                //Correctly identified SheetMusic as SheetMusic 
     72                 
     73                //TruthAccuracyRate 
    7274                if(sheetMusicCount != 0){ 
    7375                    trueAccuracyRate = ((float)truePositive/(float)sheetMusicCount)*(float)100; 
     
    7779                } 
    7880                 
     81                //FalseAccuracyRate 
    7982                if(notSheetMusicCount != 0){ 
    8083                    //Amount of Correctly identified NotSheetSheetMusic as NotSheetMusic 
     
    8588                } 
    8689                 
     90                //Overall accuaracy 
    8791                if(notSheetMusicCount != 0 && sheetMusicCount != 0) { 
    8892                    overallAccuracyRate = (truePositive + trueNegative)/(float)(sheetMusicCount+notSheetMusicCount)*(float)100; 
    8993                } 
    90                 else if (sheetMusicCount = 0) { 
    91                     overallAccuracyRate = falseAccuracyRate/2; 
     94                else if (sheetMusicCount == 0) { 
     95                    overallAccuracyRate = falseAccuracyRate; 
     96                } 
     97                else if(notSheetMusicCount == 0) { 
     98                    overallAccuracyRate = trueAccuracyRate; 
    9299                } 
    93100                else { 
    94                     overallAccuracyRate = trueAccuracyRate/2; 
     101                    overallAccuracyRate = -1; 
     102                    System.out.println("There is nothing to compare"); 
    95103                } 
    96104                 
  • other-projects/is-sheet-music-encore/trunk/image-identification-terminal/javaImageClassifier.java

    r33304 r33340  
    77import java.awt.image.BufferedImage; 
    88import java.awt.image.DataBufferByte; 
    9 import java.io.File; 
    10 import java.io.BufferedWriter; 
    11 import java.io.FileWriter; 
     9//import java.io.File; 
     10//import java.io.BufferedWriter; 
     11//import java.io.FileWriter; 
    1212import javax.imageio.ImageIO; 
    13 import java.util.logging.Logger; 
    14 import java.util.ArrayList; 
     13//import java.util.logging.Logger; 
     14//import java.util.ArrayList; 
     15//import java.util.Collections.*; 
     16import java.util.*; 
     17import java.lang.*; 
     18import java.io.*; 
    1519 
    1620//REFERENCES: 
     
    2832//False =classifierType + 0 + Filename + Status 
    2933public class javaImageClassifier{ 
    30     //Constants 
    31  
     34    //GLOBALS Constants 
    3235    static int CLASSIFIER_HOUGHLINESP_MIN   = 10; 
    3336    static int CLASSIFIER_HOUGHLINESP_MAX   = 65; 
    3437    static int HOUGHLINEP_THRESHOLD         = 10; 
     38    static int STANDARD_DEVIATION_THRESHOLD = 6; 
    3539    static int MINLINECOUNT                 = 40; 
    36     static double MAXLINEGAP                = 4; 
     40    static int MAXLINEGAP                   = 4; 
    3741    static double SLOPEGRADIENT             = 0.02; 
    38  
     42    static double CLUSTER_DISTANCE_MAX      = 40; 
     43    static double CLUSTER_DISTANCE_MIN      = 2; 
     44     
     45    static class StartAndEndPoint { 
     46        //PRIVATES 
     47        private Point _p1; 
     48        private Point _p2; 
     49        //CONSTRUCTOR 
     50        public StartAndEndPoint(Point p1, Point p2){ 
     51            _p1 = p1; 
     52            _p2 = p2;} 
     53        //GETTERS 
     54        public Point getP1(){return _p1;} 
     55        public Point getP2(){return  _p2;} 
     56        //SETTERS 
     57        public void setP1(Point p1){_p1 = p1;} 
     58        public void setP2(Point p2){_p2 = p2;} 
     59        //ToString 
     60        public  String toString(){ 
     61            return "Start: " + _p1 + " End: " + _p2; 
     62        } 
     63    } 
     64     
    3965    public static void main(String[] args) {     
    4066        try { 
     
    4571                ArrayList result_refined = null; 
    4672                Boolean result = null; 
     73                String result_cluster = ""; 
    4774                String imageFilename = args[0]; 
    4875                String classifierType = args[1]; 
     
    6592                    bw.write("Filename:" + '\t' + imageFilename + '\t' + "Classified as:" + '\t' + result_refined.get(0) + '\t' + "Number of lines:" + '\t' + result_refined.get(1) + '\t' + classifierType + '\n'); 
    6693                    break; 
     94                case "cluster-detection": 
     95                    //result_cluster = setup_Cluster(imageFilename); 
     96                    //bw.write(result_cluster); 
     97                    break; 
    6798                default: 
    6899                    System.out.println("unknown algorithm"); 
     
    84115 //CLASSIFIER FUNCTIONS 
    85116 //****************** 
    86     private static Boolean setup_HoughLinesP(String filename){ 
     117    private static boolean setup_HoughLinesP(String filename){ 
    87118    System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 
    88119    Boolean isSheetMusic = null; 
     
    118149        return isSheetMusic; 
    119150 } 
    120   
    121      private static ArrayList setup_HoughLinesP_refined(String filename){ 
     151    private static boolean classifier_HoughLinesP(BufferedImage img){ 
     152        System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 
     153        try { 
     154            //Read file 
     155            int x = img.getWidth(); 
     156            int y = img.getHeight(); 
     157            int pixelCount  = 0; 
     158            int redCount    = 0; 
     159            float percentage = 0; 
     160            //Go Thru every pixel 
     161            for(int i=0; i < y; i++){ 
     162                for(int j=0;j < x; j++){ 
     163                    //Get value for current pixels RGB value 
     164                    int currPixelRGB = img.getRGB(j, i); 
     165                    //Check if pixel is red (hex value of red) 
     166                    if(currPixelRGB == 0xFFFF0000){ 
     167                        redCount++; 
     168                    } 
     169                    pixelCount++; 
     170                } 
     171            } 
     172            //Calculate percentage of Red in image 
     173            percentage = ((float)redCount/(float)pixelCount)*(float)100; 
     174            //If more than %10 and less than %50 then its sheet music! 
     175            if(percentage > CLASSIFIER_HOUGHLINESP_MIN && percentage < CLASSIFIER_HOUGHLINESP_MAX){ 
     176                return true;} 
     177        } 
     178        catch (Exception e) { 
     179            System.err.println(e); 
     180        } 
     181        return false; 
     182    } 
     183 
     184    private static ArrayList setup_HoughLinesP_refined(String filename){ 
    122185    System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 
    123186    Boolean isSheetMusic = null; 
    124187    ArrayList returnArray = new ArrayList(); 
    125188    try{ 
    126          
    127189        //Variables 
    128190        int horizontalLineCount =0; 
     
    134196        Mat original = Imgcodecs.imread(filename, Imgcodecs.IMREAD_GRAYSCALE); 
    135197        // Edge detection 
    136         //Imgproc.Canny(original, edgesDetected, 50, 200, 3, false); 
    137198        Imgproc.adaptiveThreshold(original, edgesDetected,255, Imgproc.ADAPTIVE_THRESH_GAUSSIAN_C,Imgproc.THRESH_BINARY_INV,15, 2); 
    138         //Imgproc.blur(edgesExtra, edgesDetected, new Size(3,1)); 
    139         //Imgproc.medianBlur(edgesExtra, edgesDetected, 3); 
    140          
    141          
    142199        //Copy edges to the images that will display the results in BGR 
    143200        Imgproc.cvtColor(edgesDetected, edgesDetectedRGB, Imgproc.COLOR_GRAY2BGR); 
     
    145202        Mat linesP = new Mat(); // will hold the results of the detection 
    146203        double minLineLength = edgesDetectedRGB.size().width/8; 
    147         //Imgproc.HoughLinesP(edgesDetected, linesP, 1, Math.PI / 180, 10, minLineLength, MAXLINEGAP);// runs the actual detection 
    148         Imgproc.HoughLinesP(edgesDetected, linesP, 1, Math.PI / 720, HOUGHLINEP_THRESHOLD, minLineLength, MAXLINEGAP); //TESTING 
     204        Imgproc.HoughLinesP(edgesDetected, linesP, 1, Math.PI / 720, HOUGHLINEP_THRESHOLD, minLineLength, MAXLINEGAP); 
    149205        // Draw the lines 
    150206         
     
    179235        return returnArray; 
    180236 } 
    181   
     237    private static boolean classifier_HoughLinesP_refined(int lineCount){ 
     238        if(lineCount>MINLINECOUNT){ 
     239            return true; 
     240        } 
     241        else{ 
     242            return false; 
     243        } 
     244    } 
     245 
     246//    private static String setup_Cluster(String filename){ 
     247//      //NEED TO ADD IMAGE PROC, BEFORE THIS PART BELOW (ANALYSIS OF RESULTS) 
     248//        String returnString = ""; 
     249//        //ArrayList lineClusterResult = ClassifierLineClusterPt(linePointsArray, clustersFoundRGB); 
     250//        if(ClassifierLineCount(lineCount) == true){ 
     251//            returnString = "LineCount classifier Successful: " +   '\t' +"LinesFound: " + lineCount; 
     252//            return returnString; 
     253//        } 
     254//        else if(lineClusterResult.get(0).toString() == "true"){ 
     255//            returnString = "LineCluster classifier Successful: " + '\t' + "LinesFound: " + lineCount + '\t' + "ClustersFound: " + lineClusterResult.get(1); 
     256//            return returnString; 
     257//        } 
     258//        return returnString; 
     259//    } 
     260 
    182261 //****************** 
    183262 //INTERNAL FUNCTIONS 
    184263 //****************** 
    185     private static boolean classifier_HoughLinesP(BufferedImage img){ 
    186     System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 
    187     try { 
    188         //Read file 
    189         int x = img.getWidth(); 
    190         int y = img.getHeight(); 
    191         int pixelCount  = 0; 
    192         int redCount    = 0; 
    193         float percentage = 0; 
    194         //Go Thru every pixel 
    195         for(int i=0; i < y; i++){ 
    196             for(int j=0;j < x; j++){ 
    197                 //Get value for current pixels RGB value 
    198                 int currPixelRGB = img.getRGB(j, i); 
    199                 //Check if pixel is red (hex value of red) 
    200                 if(currPixelRGB == 0xFFFF0000){ 
    201                     redCount++; 
    202                 } 
    203                 pixelCount++; 
    204             } 
    205         } 
    206         //Calculate percentage of Red in image 
    207         percentage = ((float)redCount/(float)pixelCount)*(float)100; 
    208         //If more than %10 and less than %50 then its sheet music! 
    209         if(percentage > CLASSIFIER_HOUGHLINESP_MIN && percentage < CLASSIFIER_HOUGHLINESP_MAX){ 
    210             return true;} 
    211         } 
    212         catch (Exception e) { 
    213             System.err.println(e); 
    214         } 
    215         return false; 
    216     } 
    217      
    218     private static boolean classifier_HoughLinesP_refined(int lineCount){ 
    219         if(lineCount>MINLINECOUNT){ 
    220             return true; 
    221         } 
    222         else{ 
    223             return false; 
    224         } 
    225     } 
    226      
    227         private static  BufferedImage toBufferedImage(Mat mat){ 
     264 
     265    private static  BufferedImage toBufferedImage(Mat mat){ 
    228266        //MOSTLY COPY PASTE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
    229267        //MOSTLY COPY PASTE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
     
    245283        } 
    246284        return null; 
    247     }  
     285    } 
     286    private static ArrayList ClassifierLineClusterPt(ArrayList<StartAndEndPoint> linePointsArray, Mat clustersFoundRGB){ 
     287        /* 
     288        ADDITION: 
     289        This will check for a cluster of lines that are close together. 
     290        1. Go through the list of Y positions(start point) in parsed array. 
     291            If, there is a small distance between them, 
     292                then, add to closeLineArray. 
     293 
     294        Have all Y positions that are close to each other now. 
     295        Need to find the lines that are clustered together. 
     296 
     297        Now check if there are four of these are close to each other. 
     298        2.  Go through list of closeLine. 
     299                Get first four lines, traversing down a step each iteration {0,1,2,3} -> {1,2,3,4} -> {2,3,4,5} 
     300                If, those 4 lines are close together, 
     301                    Then, add them to a new array that holds Line Cluster Values. 
     302                    Go to line 4 positions down since, as do not want duplicates. 
     303 
     304        3. 
     305        */ 
     306        ArrayList returnArray = new ArrayList(); 
     307        ArrayList<StartAndEndPoint> closeLinePts = new ArrayList(); 
     308        ArrayList<StartAndEndPoint[]> clusterPtArray = new ArrayList(); 
     309        int clusterCount = 0; 
     310        try { 
     311            if(linePointsArray.size()> 1) { 
     312                /* 
     313                //Display input array TESTING PURPOSES 
     314                for (int i = 0; i < linePointsArray.size(); i++) { 
     315                    System.out.println(linePointsArray.get(i).toString()); 
     316                } 
     317                */ 
     318                //1. Check if y points are close together 
     319                //go thru list and compare values against each other 
     320                for (int i = 0; i < linePointsArray.size(); i++){ 
     321                    //System.out.println("i: "+ linePointsArray.get(i).getP1().y); 
     322                    for (int j = 0; j < linePointsArray.size(); j++) { 
     323                        //System.out.println("j: "+ linePointsArray.get(j).getP1().y); 
     324                        //Check if difference is less than 4 and the values are not duplicates. 
     325                        if(Math.abs(linePointsArray.get(j).getP1().y - linePointsArray.get(i).getP1().y) < 5){ 
     326                            if(linePointsArray.get(j).getP1().y != linePointsArray.get(i).getP1().y){ 
     327                                closeLinePts.add(linePointsArray.get(i)); 
     328                            } 
     329                        } 
     330                    } 
     331                } 
     332 
     333                //2. Now check if there are four of these are close to each other. 
     334                //Go through all of the items in this list and check if four of them are close together 
     335                //Check first four items, traverse down a step {0,1,2,3} -> {1,2,3,4} -> {2,3,4,5} 
     336                //If 4 items are close together, 
     337                //Then add them to a new array that holds Line Cluster Values. 
     338                //Go down 4 positions down since, as do not want duplicates. 
     339 
     340                //Now have an array of at least four lines that are close together. 
     341                //Sort array and remove duplicates 
     342                Collections.sort(closeLinePts, new Comparator<StartAndEndPoint>() { 
     343                    @Override 
     344                    public int compare(StartAndEndPoint p1, StartAndEndPoint p2) { 
     345                        return (int)(p1.getP1().y - p2.getP1().y); 
     346                    } 
     347                }); 
     348                closeLinePts = removeDuplicates(closeLinePts); 
     349                //DISPLAYING AS EXCEPTED! WOO! 
     350                /*for (StartAndEndPoint pt : closeLinePts) { 
     351                    System.out.println("CloseLinePTs: " + pt.getP1().y); 
     352                }*/ 
     353 
     354 
     355                if(closeLinePts.size() >= 4) { 
     356                    //FOR every item in array of CloseLines 
     357                    for(int i= 0; i < closeLinePts.size(); i++){ 
     358                        //If last comparator is at end of array. 
     359                        if(i + 4 >= closeLinePts.size()){ 
     360                            break; 
     361                        } 
     362                        else{ 
     363                            //Add 4 values of CloseLinePt Array to a tempArray 
     364                            StartAndEndPoint[] tempPtArray = new StartAndEndPoint[4]; 
     365                            tempPtArray[0] = closeLinePts.get(i); 
     366                            tempPtArray[1] = closeLinePts.get(i + 1); 
     367                            tempPtArray[2] = closeLinePts.get(i + 2); 
     368                            tempPtArray[3] = closeLinePts.get(i + 3); 
     369 
     370                            //Check standard deviation between these 4 values. 
     371                            //If it SD is less than 5 then it is considered to be a cluster of lines. 
     372                            if(ClusterCheck(tempPtArray)){ 
     373                                //System.out.println("tempArray PT: "+tempPtArray[0] + " , " + tempPtArray[1] + " , " + tempPtArray[2] + " , " + tempPtArray[3]); 
     374                                //Store array 
     375                                clusterPtArray.add(tempPtArray); 
     376                                //If I + 4 is less than the size of the array then increment by 4 
     377                                //Go down +4 positions in closeLineYPos array 
     378                                if((i + 4 < closeLinePts.size())){ 
     379                                    //System.out.println("IF, i = " + i + " -> "+ (i+4) + ", CloseLineYpos size= " + closeLineYPos.size()); 
     380                                    i = i+4; 
     381                                } 
     382                                else{ 
     383                                    //break 
     384                                    Thread.sleep(2000); 
     385                                    //System.out.println("End of closeLinePts -> break , i = " + i+ " closeLineYpos size= " + closeLinePts.size()); 
     386                                    break; 
     387                                } 
     388                            } 
     389                        } 
     390                    } 
     391                } 
     392 
     393                //System.out.println("Cluster Coordinates: "); 
     394                //for(StartAndEndPoint[] items : clusterPtArray){ 
     395                //    for(int i = 0; i <clusterPtArray.size(); i++){ 
     396                //        System.out.println("ITEMS: "+ items); 
     397                //    } 
     398                //} 
     399 
     400                //Setup Drawing clusters found. 
     401                //For every pt given the input array 
     402                for(StartAndEndPoint pt : linePointsArray){ 
     403                    //Go through every the Arrays in the clusterArray(clustered lines) 
     404                    for(int i =0; i < clusterPtArray.size(); i++){ 
     405                        //Go through every item in the array 
     406                        for(StartAndEndPoint item : clusterPtArray.get(i)) { 
     407                            //Check if the curr item is equal to current pt 
     408                            if (item.getP1().y == pt.getP1().y){ 
     409                                //calculate a different colour for each line 
     410                                //Draw a line 
     411                                Imgproc.line(clustersFoundRGB, pt.getP1(), pt.getP2(), new Scalar(0, 255, 0), 1, Imgproc.LINE_4, 0); 
     412                            } 
     413                        } 
     414                    } 
     415                } 
     416 
     417                clusterCount = clusterPtArray.size(); 
     418                //SETUP RETURN ARRAY 
     419                if(clusterCount >= 1){ 
     420                    returnArray.add(true); 
     421                    returnArray.add(clusterCount); 
     422                    returnArray.add(clustersFoundRGB); 
     423                } 
     424                else{ 
     425                    returnArray.add(false); 
     426                    returnArray.add(clusterCount); 
     427                    returnArray.add(clustersFoundRGB); 
     428                } 
     429            } 
     430        } 
     431        catch (Exception e) { 
     432            System.err.println(e.getMessage()); 
     433        } 
     434        return returnArray; 
     435    } 
     436    private static boolean ClusterCheck(StartAndEndPoint parseArray[]){ 
     437        try { 
     438            //System.out.println("LENGTH: " + parseArray.length); 
     439            //MAKE THREE COMPARISONS 
     440            //After clusters have been found. 
     441            //Check if  their x positions intersect 
     442            //Logic being 
     443            //(L1.S < L2.E && L1.S > L2.S) 
     444            //or 
     445            //(L2.S < L1.E && L2.S > L1.S) 
     446            //Variance is using Start of line point. 
     447            //USING VARIANTS 
     448            double variance = VarianceCalc(parseArray); 
     449            Boolean consistent = false; 
     450            if (variance <= CLUSTER_DISTANCE_MAX && variance > CLUSTER_DISTANCE_MIN) { 
     451 
     452                for (int i = 0; i < parseArray.length - 1; i++) { 
     453                    //System.out.println(i); 
     454                    double l1_S = parseArray[i].getP1().x; 
     455                    double l1_E = parseArray[i].getP2().x; 
     456                    double l2_S = parseArray[i + 1].getP1().x; 
     457                    double l2_E = parseArray[i + 1].getP2().x; 
     458 
     459                    //Check which starts after 
     460                    if (l1_S >= l2_S) { 
     461                        //baseLineStart is l1_S (call with lineComparison) 
     462                        consistent = lineComparison(l1_S, l2_S, l2_E); 
     463                    } else if (l2_S > l1_S) { 
     464                        //baseLineStart is l2_S (call with lineComparison) 
     465                        consistent = lineComparison(l2_S, l1_S, l1_E); 
     466                    } else { 
     467                        System.err.println("An error, comparing l1_S and l2_S, has occurred"); 
     468                    } 
     469 
     470                    //Check if false was returned; 
     471                    if (consistent == false) { 
     472                        /*System.out.print(" X positions of two lines did not overlap each other:" + '\t'); 
     473                        System.out.print("l1_S: " + l1_S + '\t'); 
     474                        System.out.print("l1_E: " + l1_E + '\t'); 
     475                        System.out.print("l2_S: " + l2_S + '\t'); 
     476                        System.out.print("l2_E: " + l2_E); 
     477                        System.out.println(" ");*/ 
     478                        return false; 
     479                    } 
     480                } 
     481                //Have been through for loop, maintaining consistent being true. 
     482                //Have also meet the variance MIN and MAX requirement. Therefore it is a cluster 
     483                return true; 
     484            } 
     485            //System.out.println("Did not meet Cluster Distance Min and Max requirements, Variance = " + variance); 
     486            return false; 
     487        } 
     488        catch (Exception e){ 
     489            System.err.println("           "+e.getMessage()); 
     490            return false; 
     491        } 
     492    } 
     493    private static double VarianceCalc(StartAndEndPoint parseArray[]){ 
     494        double sum =0; 
     495        double temp =0; 
     496        double mean, variance; 
     497        int size = parseArray.length; 
     498        //Calculate sum of array 
     499        for(int i =0; i < parseArray.length; i++){ 
     500            sum += parseArray[i].getP1().y; 
     501        } 
     502        //Calculate mean of array 
     503        mean = sum/parseArray.length; 
     504        //Calculate variants 
     505        for(int i =0; i < size; i++){ 
     506            temp += Math.pow((parseArray[i].getP1().y-mean),2); 
     507        } 
     508        variance = Math.abs(temp/(size -1)); 
     509        //System.out.println("VARIANCE: " + variance); 
     510        return variance; 
     511    } 
     512    private static boolean lineComparison(double baseLineS, double compareLineS, double compareLineE ){ 
     513        //System.out.print("Comparing baseLineS: " + baseLineS + " with compareLineE: " + compareLineE + " and compareLineS: " + compareLineS); 
     514        if(baseLineS < compareLineE && baseLineS > compareLineS){ 
     515            return true; 
     516        } 
     517        return false; 
     518    } 
     519    private static <T> ArrayList<T> removeDuplicates(ArrayList<T> list) { 
     520        //DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED 
     521        // Function to remove duplicates from an ArrayList 
     522        // Create a new ArrayList 
     523        ArrayList<T> newList = new ArrayList(); 
     524        // Traverse through the first list 
     525        for (T element : list) { 
     526            // If this element is not present in newList 
     527            // then add it 
     528            if (!newList.contains(element)) { 
     529                newList.add(element); 
     530            } 
     531        } 
     532        // return the new list 
     533        return newList; 
     534        //DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED//DIRECTLY COPIED 
     535    } 
     536    /*private static boolean LineCountOrCluster(int lineCount, ArrayList<StartAndEndPoint> linePointsArray, Mat clustersFoundRGB){ 
     537        ArrayList lineClusterResult = ClassifierLineClusterPt(linePointsArray, clustersFoundRGB); 
     538 
     539 
     540        //String test = ClassifierLineClusterPt(linePointsArray, clustersFoundRGB).get(0).toString(); 
     541        if(ClassifierLineCount(lineCount) == true){ 
     542            System.out.println("LineCount classifier Successful: " +   '\t' +"LinesFound: " + lineCount); 
     543            return true; 
     544        } 
     545        else if(lineClusterResult.get(0).toString() == "true"){ 
     546            System.out.println("LineCluster classifier Successful: " + '\t' + "LinesFound: " + lineCount + '\t' + "ClustersFound: " + lineClusterResult.get(1)); 
     547 
     548            return  false; 
     549        } 
     550        return false; 
     551    }*/ 
     552  
    248553} 
  • other-projects/is-sheet-music-encore/trunk/image-identification-terminal/results.txt

    r33304 r33340  
    4747OverallAccuracyRate: 92.34% 
    4848 
     49TESTING NEW LOWRES-DATABASE 
     50RUNNING HOUGHLINESP-REFINED-ALL 
     51 
     52 
  • other-projects/is-sheet-music-encore/trunk/image-identification-terminal/runClassifer.sh

    r33243 r33340  
    22 
    33if [ $# != 4 ] ; then  
    4   echo "Usage: ./testClassifier.sh file_name classifier_type output_filename type(-a:all -test:100)" 1>&2 
     4  echo "Usage: ./testClassifier.sh folder/file_name classifier_type output_filename type(-a:all -test:100 -single:1)" 1>&2 
    55  exit 1 
    66fi 
     
    4747        done 
    4848    ;; 
     49    -single) 
     50        #Runs javaImagesClassifier on ONE image 
     51        javac -cp /Scratch/cpb16/opencv-3.4.2/build/bin/opencv-342.jar javaImageClassifier.java; 
     52        echo $file_name 
     53        echo $output 
     54        echo $classifier_type 
     55        java -cp /Scratch/cpb16/opencv-3.4.2/build/bin/opencv-342.jar:. -Djava.library.path=/Scratch/cpb16/opencv-3.4.2/build/lib/  javaImageClassifier $file_name $classifier_type $output 
     56 
    4957             
    5058esac