Changeset 33340 for other-projects


Ignore:
Timestamp:
2019-07-22T16:46:33+12:00 (5 years 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 edited

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       
Note: See TracChangeset for help on using the changeset viewer.