diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..b9feb24da4ec2e083f56dcdf04f68aca45397170 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/java_gui/dist/ +/java_gui/build/ \ No newline at end of file diff --git a/java_gui/README.txt b/java_gui/README.txt new file mode 100644 index 0000000000000000000000000000000000000000..653f6bbe68e87fe05b2903f8e0ed15a1e3fc1ec4 --- /dev/null +++ b/java_gui/README.txt @@ -0,0 +1 @@ +Tested with Netbeans 8.0 \ No newline at end of file diff --git a/java_gui/_COPY_bgslibrary.exe_HERE_ b/java_gui/_COPY_bgslibrary.exe_HERE_ new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/java_gui/bgslibrary_gui.jar b/java_gui/bgslibrary_gui.jar new file mode 100644 index 0000000000000000000000000000000000000000..21d68b036451a8d759cc64cd9ae1a7eb32fb96df Binary files /dev/null and b/java_gui/bgslibrary_gui.jar differ diff --git a/java_gui/bgslibrary_gui.properties b/java_gui/bgslibrary_gui.properties new file mode 100644 index 0000000000000000000000000000000000000000..380fae5e0f7f91cefa75492e6e5cbadfd5c7f624 --- /dev/null +++ b/java_gui/bgslibrary_gui.properties @@ -0,0 +1,36 @@ +base.path = ./ +config.path = config/ + +run.path = _ +run.path = run_video.bat +run.path = run_camera.bat + +bgs.methods = _ +bgs.methods = FrameDifferenceBGS +bgs.methods = StaticFrameDifferenceBGS +bgs.methods = WeightedMovingMeanBGS +bgs.methods = WeightedMovingVarianceBGS +bgs.methods = MixtureOfGaussianV1BGS +bgs.methods = MixtureOfGaussianV2BGS +bgs.methods = AdaptiveBackgroundLearning +bgs.methods = GMG +bgs.methods = DPAdaptiveMedianBGS +bgs.methods = DPGrimsonGMMBGS +bgs.methods = DPZivkovicAGMMBGS +bgs.methods = DPMeanBGS +bgs.methods = DPWrenGABGS +bgs.methods = DPPratiMediodBGS +bgs.methods = DPEigenbackgroundBGS +bgs.methods = T2FGMM_UM +bgs.methods = T2FGMM_UV +bgs.methods = T2FMRF_UM +bgs.methods = T2FMRF_UV +bgs.methods = FuzzySugenoIntegral +bgs.methods = FuzzyChoquetIntegral +bgs.methods = MultiLayerBGS +bgs.methods = VuMeter +bgs.methods = LBSimpleGaussian +bgs.methods = LBFuzzyGaussian +bgs.methods = LBMixtureOfGaussians +bgs.methods = LBAdaptiveSOM +bgs.methods = LBFuzzyAdaptiveSOM diff --git a/java_gui/build.xml b/java_gui/build.xml new file mode 100644 index 0000000000000000000000000000000000000000..aa927ea795ac07bf8da6b4cc67a79c3427e1695a --- /dev/null +++ b/java_gui/build.xml @@ -0,0 +1,73 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- You may freely edit this file. See commented blocks below for --> +<!-- some examples of how to customize the build. --> +<!-- (If you delete it and reopen the project it will be recreated.) --> +<!-- By default, only the Clean and Build commands use this build script. --> +<!-- Commands such as Run, Debug, and Test only use this build script if --> +<!-- the Compile on Save feature is turned off for the project. --> +<!-- You can turn off the Compile on Save (or Deploy on Save) setting --> +<!-- in the project's Project Properties dialog box.--> +<project name="bgslibrary_gui" default="default" basedir="."> + <description>Builds, tests, and runs the project bgslibrary_gui.</description> + <import file="nbproject/build-impl.xml"/> + <!-- + + There exist several targets which are by default empty and which can be + used for execution of your tasks. These targets are usually executed + before and after some main targets. They are: + + -pre-init: called before initialization of project properties + -post-init: called after initialization of project properties + -pre-compile: called before javac compilation + -post-compile: called after javac compilation + -pre-compile-single: called before javac compilation of single file + -post-compile-single: called after javac compilation of single file + -pre-compile-test: called before javac compilation of JUnit tests + -post-compile-test: called after javac compilation of JUnit tests + -pre-compile-test-single: called before javac compilation of single JUnit test + -post-compile-test-single: called after javac compilation of single JUunit test + -pre-jar: called before JAR building + -post-jar: called after JAR building + -post-clean: called after cleaning build products + + (Targets beginning with '-' are not intended to be called on their own.) + + Example of inserting an obfuscator after compilation could look like this: + + <target name="-post-compile"> + <obfuscate> + <fileset dir="${build.classes.dir}"/> + </obfuscate> + </target> + + For list of available properties check the imported + nbproject/build-impl.xml file. + + + Another way to customize the build is by overriding existing main targets. + The targets of interest are: + + -init-macrodef-javac: defines macro for javac compilation + -init-macrodef-junit: defines macro for junit execution + -init-macrodef-debug: defines macro for class debugging + -init-macrodef-java: defines macro for class execution + -do-jar: JAR building + run: execution of project + -javadoc-build: Javadoc generation + test-report: JUnit report generation + + An example of overriding the target for project execution could look like this: + + <target name="run" depends="bgslibrary_gui-impl.jar"> + <exec dir="bin" executable="launcher.exe"> + <arg file="${dist.jar}"/> + </exec> + </target> + + Notice that the overridden target depends on the jar target and not only on + the compile target as the regular run target does. Again, for a list of available + properties which you can use, check the target you are overriding in the + nbproject/build-impl.xml file. + + --> +</project> diff --git a/java_gui/config/FrameProcessor.xml b/java_gui/config/FrameProcessor.xml new file mode 100644 index 0000000000000000000000000000000000000000..09e7c8bd1c57104e72b907851b73582da8f4b37c --- /dev/null +++ b/java_gui/config/FrameProcessor.xml @@ -0,0 +1,40 @@ +<?xml version="1.0"?> +<opencv_storage> +<tictoc>""</tictoc> +<enablePreProcessor>1</enablePreProcessor> +<enableForegroundMaskAnalysis>0</enableForegroundMaskAnalysis> +<enableFrameDifferenceBGS>1</enableFrameDifferenceBGS> +<enableStaticFrameDifferenceBGS>0</enableStaticFrameDifferenceBGS> +<enableWeightedMovingMeanBGS>0</enableWeightedMovingMeanBGS> +<enableWeightedMovingVarianceBGS>0</enableWeightedMovingVarianceBGS> +<enableMixtureOfGaussianV1BGS>0</enableMixtureOfGaussianV1BGS> +<enableMixtureOfGaussianV2BGS>0</enableMixtureOfGaussianV2BGS> +<enableAdaptiveBackgroundLearning>0</enableAdaptiveBackgroundLearning> +<enableGMG>0</enableGMG> +<enableDPAdaptiveMedianBGS>0</enableDPAdaptiveMedianBGS> +<enableDPGrimsonGMMBGS>0</enableDPGrimsonGMMBGS> +<enableDPZivkovicAGMMBGS>0</enableDPZivkovicAGMMBGS> +<enableDPMeanBGS>0</enableDPMeanBGS> +<enableDPWrenGABGS>0</enableDPWrenGABGS> +<enableDPPratiMediodBGS>0</enableDPPratiMediodBGS> +<enableDPEigenbackgroundBGS>0</enableDPEigenbackgroundBGS> +<enableDPTextureBGS>0</enableDPTextureBGS> +<enableT2FGMM_UM>0</enableT2FGMM_UM> +<enableT2FGMM_UV>0</enableT2FGMM_UV> +<enableT2FMRF_UM>0</enableT2FMRF_UM> +<enableT2FMRF_UV>0</enableT2FMRF_UV> +<enableFuzzySugenoIntegral>0</enableFuzzySugenoIntegral> +<enableFuzzyChoquetIntegral>0</enableFuzzyChoquetIntegral> +<enableLBSimpleGaussian>0</enableLBSimpleGaussian> +<enableLBFuzzyGaussian>0</enableLBFuzzyGaussian> +<enableLBMixtureOfGaussians>0</enableLBMixtureOfGaussians> +<enableLBAdaptiveSOM>0</enableLBAdaptiveSOM> +<enableLBFuzzyAdaptiveSOM>0</enableLBFuzzyAdaptiveSOM> +<enableLbpMrf>0</enableLbpMrf> +<enableMultiLayerBGS>0</enableMultiLayerBGS> +<enableVuMeter>0</enableVuMeter> +<enableKDE>0</enableKDE> +<enableIMBS>0</enableIMBS> +<enableMultiCueBGS>0</enableMultiCueBGS> +<enableSigmaDeltaBGS>0</enableSigmaDeltaBGS> +</opencv_storage> diff --git a/java_gui/config/PreProcessor.xml b/java_gui/config/PreProcessor.xml new file mode 100644 index 0000000000000000000000000000000000000000..e58b3187a702e2b1fc36c4576aff75e7b7f4a9cb --- /dev/null +++ b/java_gui/config/PreProcessor.xml @@ -0,0 +1,6 @@ +<?xml version="1.0"?> +<opencv_storage> +<equalizeHist>0</equalizeHist> +<gaussianBlur>0</gaussianBlur> +<enableShow>1</enableShow> +</opencv_storage> diff --git a/java_gui/config/VideoCapture.xml b/java_gui/config/VideoCapture.xml new file mode 100644 index 0000000000000000000000000000000000000000..60dd9aa81010d78759f5986f0aa5a2876da25f63 --- /dev/null +++ b/java_gui/config/VideoCapture.xml @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<opencv_storage> +<stopAt>0</stopAt> +<input_resize_percent>100</input_resize_percent> +<enableFlip>0</enableFlip> +<use_roi>0</use_roi> +<roi_defined>0</roi_defined> +<roi_x0>0</roi_x0> +<roi_y0>0</roi_y0> +<roi_x1>0</roi_x1> +<roi_y1>0</roi_y1> +<showOutput>1</showOutput> +</opencv_storage> diff --git a/java_gui/images/bgslibrary_gui_screen01.png b/java_gui/images/bgslibrary_gui_screen01.png new file mode 100644 index 0000000000000000000000000000000000000000..34ca07754cda621c06f7f593b4db50b8301e7d3c Binary files /dev/null and b/java_gui/images/bgslibrary_gui_screen01.png differ diff --git a/java_gui/images/bgslibrary_gui_screen02.png b/java_gui/images/bgslibrary_gui_screen02.png new file mode 100644 index 0000000000000000000000000000000000000000..acd112f3557b1ac6dae21f25bb399b1eda440256 Binary files /dev/null and b/java_gui/images/bgslibrary_gui_screen02.png differ diff --git a/java_gui/images/bgslibrary_gui_screen03.png b/java_gui/images/bgslibrary_gui_screen03.png new file mode 100644 index 0000000000000000000000000000000000000000..8ef88b5b356e520162a2047e7500cbd26bdca28a Binary files /dev/null and b/java_gui/images/bgslibrary_gui_screen03.png differ diff --git a/java_gui/images/bgslibrary_gui_screen04.png b/java_gui/images/bgslibrary_gui_screen04.png new file mode 100644 index 0000000000000000000000000000000000000000..345b1dfaf4f55a1ed009f4e139f02f60715e7167 Binary files /dev/null and b/java_gui/images/bgslibrary_gui_screen04.png differ diff --git a/java_gui/images/logo.jpg b/java_gui/images/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b14cadb7d6a0dedcbdbf535ae7f2f6adcc11cd6d Binary files /dev/null and b/java_gui/images/logo.jpg differ diff --git a/java_gui/lib/commons-configuration-1.8.jar b/java_gui/lib/commons-configuration-1.8.jar new file mode 100644 index 0000000000000000000000000000000000000000..ae9ae9969b634f7be3e04db3d129216d473ad798 Binary files /dev/null and b/java_gui/lib/commons-configuration-1.8.jar differ diff --git a/java_gui/lib/commons-io-2.3.jar b/java_gui/lib/commons-io-2.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..d5a07718915c714ca1a8ced57c4a69336d3c02d7 Binary files /dev/null and b/java_gui/lib/commons-io-2.3.jar differ diff --git a/java_gui/lib/commons-lang-2.6.jar b/java_gui/lib/commons-lang-2.6.jar new file mode 100644 index 0000000000000000000000000000000000000000..98467d3a653ebad776ffa3542efeb9732fe0b482 Binary files /dev/null and b/java_gui/lib/commons-lang-2.6.jar differ diff --git a/java_gui/lib/commons-logging-1.1.1.jar b/java_gui/lib/commons-logging-1.1.1.jar new file mode 100644 index 0000000000000000000000000000000000000000..8758a96b70cfba9466bacca19c0d99b87cf53734 Binary files /dev/null and b/java_gui/lib/commons-logging-1.1.1.jar differ diff --git a/java_gui/lib/swingx-all-1.6.3.jar b/java_gui/lib/swingx-all-1.6.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..b6f4414d8a7ec344b6fbc3ee4d2ae700262fe95a Binary files /dev/null and b/java_gui/lib/swingx-all-1.6.3.jar differ diff --git a/java_gui/lib/swingx-beaninfo-1.6.3.jar b/java_gui/lib/swingx-beaninfo-1.6.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..0e9db857386c5ff0d9132348de4f63f9ae93814a Binary files /dev/null and b/java_gui/lib/swingx-beaninfo-1.6.3.jar differ diff --git a/java_gui/manifest.mf b/java_gui/manifest.mf new file mode 100644 index 0000000000000000000000000000000000000000..328e8e5bc3b7f1f7bad2bc0751a933e00c801983 --- /dev/null +++ b/java_gui/manifest.mf @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +X-COMMENT: Main-Class will be added automatically by build + diff --git a/java_gui/nbproject/build-impl.xml b/java_gui/nbproject/build-impl.xml new file mode 100644 index 0000000000000000000000000000000000000000..fe85de88a6792e577aa6f133d18132b08b42d01d --- /dev/null +++ b/java_gui/nbproject/build-impl.xml @@ -0,0 +1,1396 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +*** GENERATED FROM project.xml - DO NOT EDIT *** +*** EDIT ../build.xml INSTEAD *** + +For the purpose of easier reading the script +is divided into following sections: + + - initialization + - compilation + - jar + - execution + - debugging + - javadoc + - test compilation + - test execution + - test debugging + - applet + - cleanup + + --> +<project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="bgslibrary_gui-impl"> + <fail message="Please build using Ant 1.8.0 or higher."> + <condition> + <not> + <antversion atleast="1.8.0"/> + </not> + </condition> + </fail> + <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/> + <!-- + ====================== + INITIALIZATION SECTION + ====================== + --> + <target name="-pre-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-pre-init" name="-init-private"> + <property file="nbproject/private/config.properties"/> + <property file="nbproject/private/configs/${config}.properties"/> + <property file="nbproject/private/private.properties"/> + </target> + <target depends="-pre-init,-init-private" name="-init-user"> + <property file="${user.properties.file}"/> + <!-- The two properties below are usually overridden --> + <!-- by the active platform. Just a fallback. --> + <property name="default.javac.source" value="1.4"/> + <property name="default.javac.target" value="1.4"/> + </target> + <target depends="-pre-init,-init-private,-init-user" name="-init-project"> + <property file="nbproject/configs/${config}.properties"/> + <property file="nbproject/project.properties"/> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init"> + <property name="platform.java" value="${java.home}/bin/java"/> + <available file="${manifest.file}" property="manifest.available"/> + <condition property="splashscreen.available"> + <and> + <not> + <equals arg1="${application.splash}" arg2="" trim="true"/> + </not> + <available file="${application.splash}"/> + </and> + </condition> + <condition property="main.class.available"> + <and> + <isset property="main.class"/> + <not> + <equals arg1="${main.class}" arg2="" trim="true"/> + </not> + </and> + </condition> + <condition property="profile.available"> + <and> + <isset property="javac.profile"/> + <length length="0" string="${javac.profile}" when="greater"/> + <matches pattern="1\.[89](\..*)?" string="${javac.source}"/> + </and> + </condition> + <condition property="do.archive"> + <or> + <not> + <istrue value="${jar.archive.disabled}"/> + </not> + <istrue value="${not.archive.disabled}"/> + </or> + </condition> + <condition property="do.mkdist"> + <and> + <isset property="do.archive"/> + <isset property="libs.CopyLibs.classpath"/> + <not> + <istrue value="${mkdist.disabled}"/> + </not> + </and> + </condition> + <condition property="do.archive+manifest.available"> + <and> + <isset property="manifest.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+main.class.available"> + <and> + <isset property="main.class.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+splashscreen.available"> + <and> + <isset property="splashscreen.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+profile.available"> + <and> + <isset property="profile.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="have.tests"> + <or/> + </condition> + <condition property="have.sources"> + <or> + <available file="${src.dir}"/> + </or> + </condition> + <condition property="netbeans.home+have.tests"> + <and> + <isset property="netbeans.home"/> + <isset property="have.tests"/> + </and> + </condition> + <condition property="no.javadoc.preview"> + <and> + <isset property="javadoc.preview"/> + <isfalse value="${javadoc.preview}"/> + </and> + </condition> + <property name="run.jvmargs" value=""/> + <property name="run.jvmargs.ide" value=""/> + <property name="javac.compilerargs" value=""/> + <property name="work.dir" value="${basedir}"/> + <condition property="no.deps"> + <and> + <istrue value="${no.dependencies}"/> + </and> + </condition> + <property name="javac.debug" value="true"/> + <property name="javadoc.preview" value="true"/> + <property name="application.args" value=""/> + <property name="source.encoding" value="${file.encoding}"/> + <property name="runtime.encoding" value="${source.encoding}"/> + <condition property="javadoc.encoding.used" value="${javadoc.encoding}"> + <and> + <isset property="javadoc.encoding"/> + <not> + <equals arg1="${javadoc.encoding}" arg2=""/> + </not> + </and> + </condition> + <property name="javadoc.encoding.used" value="${source.encoding}"/> + <property name="includes" value="**"/> + <property name="excludes" value=""/> + <property name="do.depend" value="false"/> + <condition property="do.depend.true"> + <istrue value="${do.depend}"/> + </condition> + <path id="endorsed.classpath.path" path="${endorsed.classpath}"/> + <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'"> + <and> + <isset property="endorsed.classpath"/> + <not> + <equals arg1="${endorsed.classpath}" arg2="" trim="true"/> + </not> + </and> + </condition> + <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}"> + <isset property="profile.available"/> + </condition> + <condition else="false" property="jdkBug6558476"> + <and> + <matches pattern="1\.[56]" string="${java.specification.version}"/> + <not> + <os family="unix"/> + </not> + </and> + </condition> + <property name="javac.fork" value="${jdkBug6558476}"/> + <property name="jar.index" value="false"/> + <property name="jar.index.metainf" value="${jar.index}"/> + <property name="copylibs.rebase" value="true"/> + <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/> + <condition property="junit.available"> + <or> + <available classname="org.junit.Test" classpath="${run.test.classpath}"/> + <available classname="junit.framework.Test" classpath="${run.test.classpath}"/> + </or> + </condition> + <condition property="testng.available"> + <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/> + </condition> + <condition property="junit+testng.available"> + <and> + <istrue value="${junit.available}"/> + <istrue value="${testng.available}"/> + </and> + </condition> + <condition else="testng" property="testng.mode" value="mixed"> + <istrue value="${junit+testng.available}"/> + </condition> + <condition else="" property="testng.debug.mode" value="-mixed"> + <istrue value="${junit+testng.available}"/> + </condition> + </target> + <target name="-post-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check"> + <fail unless="src.dir">Must set src.dir</fail> + <fail unless="build.dir">Must set build.dir</fail> + <fail unless="dist.dir">Must set dist.dir</fail> + <fail unless="build.classes.dir">Must set build.classes.dir</fail> + <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail> + <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail> + <fail unless="build.test.results.dir">Must set build.test.results.dir</fail> + <fail unless="build.classes.excludes">Must set build.classes.excludes</fail> + <fail unless="dist.jar">Must set dist.jar</fail> + </target> + <target name="-init-macrodef-property"> + <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute name="name"/> + <attribute name="value"/> + <sequential> + <property name="@{name}" value="${@{value}}"/> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <mkdir dir="@{apgeneratedsrcdir}"/> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <compilerarg value="-processorpath"/> + <compilerarg path="@{processorpath}:${empty.dir}"/> + <compilerarg line="${ap.processors.internal}"/> + <compilerarg line="${annotation.processing.processor.options}"/> + <compilerarg value="-s"/> + <compilerarg path="@{apgeneratedsrcdir}"/> + <compilerarg line="${ap.proc.none.internal}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac"> + <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <sequential> + <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}"> + <classpath> + <path path="@{classpath}"/> + </classpath> + </depend> + </sequential> + </macrodef> + <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${build.classes.dir}" name="destdir"/> + <sequential> + <fail unless="javac.includes">Must set javac.includes</fail> + <pathconvert pathsep="${line.separator}" property="javac.includes.binary"> + <path> + <filelist dir="@{destdir}" files="${javac.includes}"/> + </path> + <globmapper from="*.java" to="*.class"/> + </pathconvert> + <tempfile deleteonexit="true" property="javac.includesfile.binary"/> + <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/> + <delete> + <files includesfile="${javac.includesfile.binary}"/> + </delete> + <delete> + <fileset file="${javac.includesfile.binary}"/> + </delete> + </sequential> + </macrodef> + </target> + <target if="${junit.available}" name="-init-macrodef-junit-init"> + <condition else="false" property="nb.junit.batch" value="true"> + <and> + <istrue value="${junit.available}"/> + <not> + <isset property="test.method"/> + </not> + </and> + </condition> + <condition else="false" property="nb.junit.single" value="true"> + <and> + <istrue value="${junit.available}"/> + <isset property="test.method"/> + </and> + </condition> + </target> + <target name="-init-test-properties"> + <property name="test.binaryincludes" value="<nothing>"/> + <property name="test.binarytestincludes" value=""/> + <property name="test.binaryexcludes" value=""/> + </target> + <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}"> + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg value="-ea"/> + <customize/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}"> + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <batchtest todir="${build.test.results.dir}"> + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}"> + <filename name="${test.binarytestincludes}"/> + </fileset> + </batchtest> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg value="-ea"/> + <customize/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/> + <target if="${testng.available}" name="-init-macrodef-testng"> + <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}"> + <isset property="test.method"/> + </condition> + <union id="test.set"/> + <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/> + <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="bgslibrary_gui" testname="TestNG tests" workingDir="${work.dir}"> + <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/> + <propertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </propertyset> + <customize/> + </testng> + </sequential> + </macrodef> + </target> + <target name="-init-macrodef-test-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <echo>No tests executed.</echo> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize/> + </j2seproject3:junit> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize/> + </j2seproject3:testng> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test"> + <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <sequential> + <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + </customize> + </j2seproject3:test-impl> + </sequential> + </macrodef> + </target> + <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}"> + <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg value="-ea"/> + <jvmarg line="${debug-args-line}"/> + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/> + <customize/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch"> + <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <batchtest todir="${build.test.results.dir}"> + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}"> + <filename name="${test.binarytestincludes}"/> + </fileset> + </batchtest> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg value="-ea"/> + <jvmarg line="${debug-args-line}"/> + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/> + <customize/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl"> + <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize/> + </j2seproject3:junit-debug> + </sequential> + </macrodef> + </target> + <target if="${testng.available}" name="-init-macrodef-testng-debug"> + <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <element name="customize2" optional="true"/> + <sequential> + <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}"> + <isset property="test.method"/> + </condition> + <condition else="-suitename bgslibrary_gui -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> + <matches pattern=".*\.xml" string="@{testClass}"/> + </condition> + <delete dir="${build.test.results.dir}" quiet="true"/> + <mkdir dir="${build.test.results.dir}"/> + <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}"> + <customize> + <customize2/> + <jvmarg value="-ea"/> + <arg line="${testng.debug.mode}"/> + <arg line="-d ${build.test.results.dir}"/> + <arg line="-listener org.testng.reporters.VerboseReporter"/> + <arg line="${testng.cmd.args}"/> + </customize> + </j2seproject3:debug> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl"> + <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <element implicit="true" name="customize2" optional="true"/> + <sequential> + <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}"> + <customize2/> + </j2seproject3:testng-debug> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit"> + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <sequential> + <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + </customize> + </j2seproject3:test-debug-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng"> + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <sequential> + <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}"> + <customize2> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + </customize2> + </j2seproject3:testng-debug-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/> + <!-- + pre NB7.2 profiling section; consider it deprecated + --> + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/> + <target if="profiler.info.jvmargs.agent" name="-profile-pre-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="profiler.info.jvmargs.agent" name="-profile-post-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile"> + <macrodef name="resolve"> + <attribute name="name"/> + <attribute name="value"/> + <sequential> + <property name="@{name}" value="${env.@{value}}"/> + </sequential> + </macrodef> + <macrodef name="profile"> + <attribute default="${main.class}" name="classname"/> + <element name="customize" optional="true"/> + <sequential> + <property environment="env"/> + <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/> + <java classname="@{classname}" dir="${profiler.info.dir}" fork="true" jvm="${profiler.info.jvm}"> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="${profiler.info.jvmargs.agent}"/> + <jvmarg line="${profiler.info.jvmargs}"/> + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/> + <arg line="${application.args}"/> + <classpath> + <path path="${run.classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check"> + <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail> + <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail> + </target> + <!-- + end of pre NB7.2 profiling section + --> + <target depends="-init-debug-args" name="-init-macrodef-nbjpda"> + <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${main.class}" name="name"/> + <attribute default="${debug.classpath}" name="classpath"/> + <attribute default="" name="stopclassname"/> + <sequential> + <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}"> + <classpath> + <path path="@{classpath}"/> + </classpath> + </nbjpdastart> + </sequential> + </macrodef> + <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${build.classes.dir}" name="dir"/> + <sequential> + <nbjpdareload> + <fileset dir="@{dir}" includes="${fix.classes}"> + <include name="${fix.includes}*.class"/> + </fileset> + </nbjpdareload> + </sequential> + </macrodef> + </target> + <target name="-init-debug-args"> + <property name="version-output" value="java version "${ant.java.version}"/> + <condition property="have-jdk-older-than-1.4"> + <or> + <contains string="${version-output}" substring="java version "1.0"/> + <contains string="${version-output}" substring="java version "1.1"/> + <contains string="${version-output}" substring="java version "1.2"/> + <contains string="${version-output}" substring="java version "1.3"/> + </or> + </condition> + <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none"> + <istrue value="${have-jdk-older-than-1.4}"/> + </condition> + <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem"> + <os family="windows"/> + </condition> + <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}"> + <isset property="debug.transport"/> + </condition> + </target> + <target depends="-init-debug-args" name="-init-macrodef-debug"> + <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${main.class}" name="classname"/> + <attribute default="${debug.classpath}" name="classpath"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" fork="true"> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg line="${debug-args-line}"/> + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <classpath> + <path path="@{classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target name="-init-macrodef-java"> + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${main.class}" name="classname"/> + <attribute default="${run.classpath}" name="classpath"/> + <attribute default="jvm" name="jvm"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" fork="true"> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <classpath> + <path path="@{classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target name="-init-macrodef-copylibs"> + <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${manifest.file}" name="manifest"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> + <pathconvert property="run.classpath.without.build.classes.dir"> + <path path="${run.classpath}"/> + <map from="${build.classes.dir.resolved}" to=""/> + </pathconvert> + <pathconvert pathsep=" " property="jar.classpath"> + <path path="${run.classpath.without.build.classes.dir}"/> + <chainedmapper> + <flattenmapper/> + <filtermapper> + <replacestring from=" " to="%20"/> + </filtermapper> + <globmapper from="*" to="lib/*"/> + </chainedmapper> + </pathconvert> + <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/> + <copylibs compress="${jar.compress}" excludeFromCopy="${copylibs.excludes}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}"> + <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/> + <manifest> + <attribute name="Class-Path" value="${jar.classpath}"/> + <customize/> + </manifest> + </copylibs> + </sequential> + </macrodef> + </target> + <target name="-init-presetdef-jar"> + <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1"> + <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}"> + <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/> + </jar> + </presetdef> + </target> + <target name="-init-ap-cmdline-properties"> + <property name="annotation.processing.enabled" value="true"/> + <property name="annotation.processing.processors.list" value=""/> + <property name="annotation.processing.processor.options" value=""/> + <property name="annotation.processing.run.all.processors" value="true"/> + <property name="javac.processorpath" value="${javac.classpath}"/> + <property name="javac.test.processorpath" value="${javac.test.classpath}"/> + <condition property="ap.supported.internal" value="true"> + <not> + <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/> + </not> + </condition> + </target> + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported"> + <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}"> + <isfalse value="${annotation.processing.run.all.processors}"/> + </condition> + <condition else="" property="ap.proc.none.internal" value="-proc:none"> + <isfalse value="${annotation.processing.enabled}"/> + </condition> + </target> + <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline"> + <property name="ap.cmd.line.internal" value=""/> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/> + <!-- + =================== + COMPILATION SECTION + =================== + --> + <target name="-deps-jar-init" unless="built-jar.properties"> + <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/> + <delete file="${built-jar.properties}" quiet="true"/> + </target> + <target if="already.built.jar.${basedir}" name="-warn-already-built-jar"> + <echo level="warn" message="Cycle detected: bgslibrary_gui was already built"/> + </target> + <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps"> + <mkdir dir="${build.dir}"/> + <touch file="${built-jar.properties}" verbose="false"/> + <property file="${built-jar.properties}" prefix="already.built.jar."/> + <antcall target="-warn-already-built-jar"/> + <propertyfile file="${built-jar.properties}"> + <entry key="${basedir}" value=""/> + </propertyfile> + </target> + <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/> + <target depends="init" name="-check-automatic-build"> + <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/> + </target> + <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build"> + <antcall target="clean"/> + </target> + <target depends="init,deps-jar" name="-pre-pre-compile"> + <mkdir dir="${build.classes.dir}"/> + </target> + <target name="-pre-compile"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="do.depend.true" name="-compile-depend"> + <pathconvert property="build.generated.subdirs"> + <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </pathconvert> + <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/> + </target> + <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile"> + <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/> + <copy todir="${build.classes.dir}"> + <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> + </copy> + </target> + <target if="has.persistence.xml" name="-copy-persistence-xml"> + <mkdir dir="${build.classes.dir}/META-INF"/> + <copy todir="${build.classes.dir}/META-INF"> + <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/> + </copy> + </target> + <target name="-post-compile"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/> + <target name="-pre-compile-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single"> + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> + <j2seproject3:force-recompile/> + <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}"/> + </target> + <target name="-post-compile-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/> + <!-- + ==================== + JAR BUILDING SECTION + ==================== + --> + <target depends="init" name="-pre-pre-jar"> + <dirname file="${dist.jar}" property="dist.jar.dir"/> + <mkdir dir="${dist.jar.dir}"/> + </target> + <target name="-pre-jar"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available"> + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/> + <touch file="${tmp.manifest.file}" verbose="false"/> + </target> + <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest"> + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/> + <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass"> + <manifest file="${tmp.manifest.file}" mode="update"> + <attribute name="Main-Class" value="${main.class}"/> + </manifest> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile"> + <manifest file="${tmp.manifest.file}" mode="update"> + <attribute name="Profile" value="${javac.profile}"/> + </manifest> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen"> + <basename file="${application.splash}" property="splashscreen.basename"/> + <mkdir dir="${build.classes.dir}/META-INF"/> + <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/> + <manifest file="${tmp.manifest.file}" mode="update"> + <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/> + </manifest> + </target> + <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.mkdist" name="-do-jar-copylibs"> + <j2seproject3:copylibs manifest="${tmp.manifest.file}"/> + <echo level="info">To run this application from the command line without Ant, try:</echo> + <property location="${dist.jar}" name="dist.jar.resolved"/> + <echo level="info">java -jar "${dist.jar.resolved}"</echo> + </target> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.archive" name="-do-jar-jar" unless="do.mkdist"> + <j2seproject1:jar manifest="${tmp.manifest.file}"/> + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> + <property location="${dist.jar}" name="dist.jar.resolved"/> + <pathconvert property="run.classpath.with.dist.jar"> + <path path="${run.classpath}"/> + <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/> + </pathconvert> + <condition else="" property="jar.usage.message" value="To run this application from the command line without Ant, try:${line.separator}${platform.java} -cp ${run.classpath.with.dist.jar} ${main.class}"> + <isset property="main.class.available"/> + </condition> + <condition else="debug" property="jar.usage.level" value="info"> + <isset property="main.class.available"/> + </condition> + <echo level="${jar.usage.level}" message="${jar.usage.message}"/> + </target> + <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest"> + <delete> + <fileset file="${tmp.manifest.file}"/> + </delete> + </target> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-jar,-do-jar-delete-manifest" name="-do-jar-without-libraries"/> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-copylibs,-do-jar-delete-manifest" name="-do-jar-with-libraries"/> + <target name="-post-jar"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-jar,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/> + <target depends="init,compile,-pre-jar,-do-jar,-post-jar" description="Build JAR." name="jar"/> + <!-- + ================= + EXECUTION SECTION + ================= + --> + <target depends="init,compile" description="Run a main class." name="run"> + <j2seproject1:java> + <customize> + <arg line="${application.args}"/> + </customize> + </j2seproject1:java> + </target> + <target name="-do-not-recompile"> + <property name="javac.includes.binary" value=""/> + </target> + <target depends="init,compile-single" name="run-single"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <j2seproject1:java classname="${run.class}"/> + </target> + <target depends="init,compile-test-single" name="run-test-with-main"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/> + </target> + <!-- + ================= + DEBUGGING SECTION + ================= + --> + <target depends="init" if="netbeans.home" name="-debug-start-debugger"> + <j2seproject1:nbjpdastart name="${debug.class}"/> + </target> + <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test"> + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/> + </target> + <target depends="init,compile" name="-debug-start-debuggee"> + <j2seproject3:debug> + <customize> + <arg line="${application.args}"/> + </customize> + </j2seproject3:debug> + </target> + <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/> + <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto"> + <j2seproject1:nbjpdastart stopclassname="${main.class}"/> + </target> + <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/> + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single"> + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail> + <j2seproject3:debug classname="${debug.class}"/> + </target> + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/> + <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test"> + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail> + <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/> + </target> + <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/> + <target depends="init" name="-pre-debug-fix"> + <fail unless="fix.includes">Must set fix.includes</fail> + <property name="javac.includes" value="${fix.includes}.java"/> + </target> + <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix"> + <j2seproject1:nbjpdareload/> + </target> + <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/> + <!-- + ================= + PROFILING SECTION + ================= + --> + <!-- + pre NB7.2 profiler integration + --> + <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile/> + </target> + <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72"> + <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile classname="${profile.class}"/> + </target> + <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile classname="sun.applet.AppletViewer"> + <customize> + <arg value="${applet.url}"/> + </customize> + </profile> + </target> + <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + </nbprofiledirect> + <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true"> + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/> + <jvmarg value="${profiler.info.jvmargs.agent}"/> + <jvmarg line="${profiler.info.jvmargs}"/> + <test name="${profile.class}"/> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + </junit> + </target> + <!-- + end of pre NB72 profiling section + --> + <target if="netbeans.home" name="-profile-check"> + <condition property="profiler.configured"> + <or> + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/> + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/> + </or> + </condition> + </target> + <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent"> + <startprofiler/> + <antcall target="run"/> + </target> + <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <startprofiler/> + <antcall target="run-single"/> + </target> + <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/> + <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs"> + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail> + <startprofiler/> + <antcall target="test-single"/> + </target> + <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <startprofiler/> + <antcal target="run-test-with-main"/> + </target> + <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <startprofiler/> + <antcall target="run-applet"/> + </target> + <!-- + =============== + JAVADOC SECTION + =============== + --> + <target depends="init" if="have.sources" name="-javadoc-build"> + <mkdir dir="${dist.javadoc.dir}"/> + <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}"> + <and> + <isset property="endorsed.classpath.cmd.line.arg"/> + <not> + <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/> + </not> + </and> + </condition> + <condition else="" property="bug5101868workaround" value="*.java"> + <matches pattern="1\.[56](\..*)?" string="${java.version}"/> + </condition> + <javadoc additionalparam="-J-Dfile.encoding=${file.encoding} ${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}"> + <classpath> + <path path="${javac.classpath}"/> + </classpath> + <fileset dir="${src.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}"> + <filename name="**/*.java"/> + </fileset> + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="**/*.java"/> + <exclude name="*.java"/> + </fileset> + <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/> + </javadoc> + <copy todir="${dist.javadoc.dir}"> + <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}"> + <filename name="**/doc-files/**"/> + </fileset> + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="**/doc-files/**"/> + </fileset> + </copy> + </target> + <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview"> + <nbbrowse file="${dist.javadoc.dir}/index.html"/> + </target> + <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/> + <!-- + ========================= + TEST COMPILATION SECTION + ========================= + --> + <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test"> + <mkdir dir="${build.test.classes.dir}"/> + </target> + <target name="-pre-compile-test"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="do.depend.true" name="-compile-test-depend"> + <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir=""/> + </target> + <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test"> + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir=""/> + <copy todir="${build.test.classes.dir}"/> + </target> + <target name="-post-compile-test"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/> + <target name="-pre-compile-test-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single"> + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> + <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/> + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="" srcdir=""/> + <copy todir="${build.test.classes.dir}"/> + </target> + <target name="-post-compile-test-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/> + <!-- + ======================= + TEST EXECUTION SECTION + ======================= + --> + <target depends="init" if="have.tests" name="-pre-test-run"> + <mkdir dir="${build.test.results.dir}"/> + </target> + <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run"> + <j2seproject3:test includes="${includes}" testincludes="**/*Test.java"/> + </target> + <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init" if="have.tests" name="test-report"/> + <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/> + <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/> + <target depends="init" if="have.tests" name="-pre-test-run-single"> + <mkdir dir="${build.test.results.dir}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single"> + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail> + <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method"> + <fail unless="test.class">Must select some files in the IDE or set test.class</fail> + <fail unless="test.method">Must select some method in the IDE or set test.method</fail> + <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/> + <!-- + ======================= + TEST DEBUGGING SECTION + ======================= + --> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test"> + <fail unless="test.class">Must select one file in the IDE or set test.class</fail> + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method"> + <fail unless="test.class">Must select one file in the IDE or set test.class</fail> + <fail unless="test.method">Must select some method in the IDE or set test.method</fail> + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/> + </target> + <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test"> + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/> + </target> + <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/> + <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/> + <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test"> + <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/> + </target> + <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/> + <!-- + ========================= + APPLET EXECUTION SECTION + ========================= + --> + <target depends="init,compile-single" name="run-applet"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <j2seproject1:java classname="sun.applet.AppletViewer"> + <customize> + <arg value="${applet.url}"/> + </customize> + </j2seproject1:java> + </target> + <!-- + ========================= + APPLET DEBUGGING SECTION + ========================= + --> + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <j2seproject3:debug classname="sun.applet.AppletViewer"> + <customize> + <arg value="${applet.url}"/> + </customize> + </j2seproject3:debug> + </target> + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/> + <!-- + =============== + CLEANUP SECTION + =============== + --> + <target name="-deps-clean-init" unless="built-clean.properties"> + <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/> + <delete file="${built-clean.properties}" quiet="true"/> + </target> + <target if="already.built.clean.${basedir}" name="-warn-already-built-clean"> + <echo level="warn" message="Cycle detected: bgslibrary_gui was already built"/> + </target> + <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps"> + <mkdir dir="${build.dir}"/> + <touch file="${built-clean.properties}" verbose="false"/> + <property file="${built-clean.properties}" prefix="already.built.clean."/> + <antcall target="-warn-already-built-clean"/> + <propertyfile file="${built-clean.properties}"> + <entry key="${basedir}" value=""/> + </propertyfile> + </target> + <target depends="init" name="-do-clean"> + <delete dir="${build.dir}"/> + <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/> + </target> + <target name="-post-clean"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/> + <target name="-check-call-dep"> + <property file="${call.built.properties}" prefix="already.built."/> + <condition property="should.call.dep"> + <and> + <not> + <isset property="already.built.${call.subproject}"/> + </not> + <available file="${call.script}"/> + </and> + </condition> + </target> + <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep"> + <ant antfile="${call.script}" inheritall="false" target="${call.target}"> + <propertyset> + <propertyref prefix="transfer."/> + <mapper from="transfer.*" to="*" type="glob"/> + </propertyset> + </ant> + </target> +</project> diff --git a/java_gui/nbproject/genfiles.properties b/java_gui/nbproject/genfiles.properties new file mode 100644 index 0000000000000000000000000000000000000000..ce2450cf88cde5f081bf391d5e8f9d1014adc68d --- /dev/null +++ b/java_gui/nbproject/genfiles.properties @@ -0,0 +1,8 @@ +build.xml.data.CRC32=e183c4b1 +build.xml.script.CRC32=ccbe32ac +build.xml.stylesheet.CRC32=8064a381@1.74.2.48 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. +nbproject/build-impl.xml.data.CRC32=e183c4b1 +nbproject/build-impl.xml.script.CRC32=fd5e303e +nbproject/build-impl.xml.stylesheet.CRC32=876e7a8f@1.74.2.48 diff --git a/java_gui/nbproject/private/config.properties b/java_gui/nbproject/private/config.properties new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/java_gui/nbproject/private/private.properties b/java_gui/nbproject/private/private.properties new file mode 100644 index 0000000000000000000000000000000000000000..47427cdb6fe90f9300173fd1029988d087d8a6b4 --- /dev/null +++ b/java_gui/nbproject/private/private.properties @@ -0,0 +1,6 @@ +compile.on.save=true +do.depend=false +do.jar=true +javac.debug=true +javadoc.preview=true +user.properties.file=C:\\Users\\asobra01\\AppData\\Roaming\\NetBeans\\8.0\\build.properties diff --git a/java_gui/nbproject/private/private.xml b/java_gui/nbproject/private/private.xml new file mode 100644 index 0000000000000000000000000000000000000000..cd3e03d7ecf45a3fe87e79332c52ee6475f44638 --- /dev/null +++ b/java_gui/nbproject/private/private.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project-private xmlns="http://www.netbeans.org/ns/project-private/1"> + <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/1"/> + <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/> + <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2"> + <group/> + </open-files> +</project-private> diff --git a/java_gui/nbproject/project.properties b/java_gui/nbproject/project.properties new file mode 100644 index 0000000000000000000000000000000000000000..7be5ebf41f0b0fb89112a6bc8143f89d60baef25 --- /dev/null +++ b/java_gui/nbproject/project.properties @@ -0,0 +1,103 @@ +annotation.processing.enabled=true +annotation.processing.enabled.in.editor=false +annotation.processing.processors.list= +annotation.processing.run.all.processors=true +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +application.desc=BGSLibrary - A Background Subtraction Library +application.homepage=https://github.com/andrewssobral/bgslibrary +application.splash=E:\\Projetos Mestrado\\bgslibrary\\bgslibrary_gui\\images\\logo.jpg +application.title=BGSLibrary - Java GUI +application.vendor=Andrews Sobral +auxiliary.org-netbeans-spi-editor-hints-projects.perProjectHintSettingsFile=nbproject/cfg_hints.xml +build.classes.dir=${build.dir}/classes +build.classes.excludes=**/*.java,**/*.form +# This directory is removed when the project is cleaned: +build.dir=build +build.generated.dir=${build.dir}/generated +build.generated.sources.dir=${build.dir}/generated-sources +# Only compile against the classpath explicitly listed here: +build.sysclasspath=ignore +build.test.classes.dir=${build.dir}/test/classes +build.test.results.dir=${build.dir}/test/results +# Uncomment to specify the preferred debugger connection transport: +#debug.transport=dt_socket +debug.classpath=\ + ${run.classpath} +debug.test.classpath=\ + ${run.test.classpath} +# This directory is removed when the project is cleaned: +dist.dir=dist +dist.jar=${dist.dir}/bgslibrary_gui.jar +dist.javadoc.dir=${dist.dir}/javadoc +endorsed.classpath= +excludes= +file.reference.commons-configuration-1.8.jar=lib\\commons-configuration-1.8.jar +file.reference.commons-io-2.3.jar=lib/commons-io-2.3.jar +file.reference.commons-lang-2.6.jar=lib\\commons-lang-2.6.jar +file.reference.commons-logging-1.1.1.jar=lib\\commons-logging-1.1.1.jar +file.reference.swingx-all-1.6.3.jar=lib/swingx-all-1.6.3.jar +file.reference.swingx-beaninfo-1.6.3.jar=lib/swingx-beaninfo-1.6.3.jar +includes=** +jar.archive.disabled=${jnlp.enabled} +jar.compress=true +jar.index=${jnlp.enabled} +javac.classpath=\ + ${file.reference.swingx-all-1.6.3.jar}:\ + ${file.reference.swingx-beaninfo-1.6.3.jar}:\ + ${file.reference.commons-io-2.3.jar}:\ + ${file.reference.commons-configuration-1.8.jar}:\ + ${file.reference.commons-lang-2.6.jar}:\ + ${file.reference.commons-logging-1.1.1.jar} +# Space-separated list of extra javac options +javac.compilerargs= +javac.deprecation=false +javac.processorpath=\ + ${javac.classpath} +javac.source=1.6 +javac.target=1.6 +javac.test.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +javac.test.processorpath=\ + ${javac.test.classpath} +javadoc.additionalparam= +javadoc.author=false +javadoc.encoding=${source.encoding} +javadoc.noindex=false +javadoc.nonavbar=false +javadoc.notree=false +javadoc.private=false +javadoc.splitindex=true +javadoc.use=true +javadoc.version=false +javadoc.windowtitle= +jnlp.codebase.type=no.codebase +jnlp.descriptor=application +jnlp.enabled=false +jnlp.mixed.code=default +jnlp.offline-allowed=false +jnlp.signed=false +jnlp.signing= +jnlp.signing.alias= +jnlp.signing.keystore= +main.class=br.com.bgslibrary.Main +# Optional override of default Codebase manifest attribute, use to prevent RIAs from being repurposed +manifest.custom.codebase= +# Optional override of default Permissions manifest attribute (supported values: sandbox, all-permissions) +manifest.custom.permissions= +manifest.file=manifest.mf +meta.inf.dir=${src.dir}/META-INF +mkdist.disabled=false +platform.active=default_platform +run.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +# Space-separated list of JVM arguments used when running the project +# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value +# or test-sys-prop.name=value to set system properties for unit tests): +run.jvmargs= +run.test.classpath=\ + ${javac.test.classpath}:\ + ${build.test.classes.dir} +source.encoding=UTF-8 +src.dir=src diff --git a/java_gui/nbproject/project.xml b/java_gui/nbproject/project.xml new file mode 100644 index 0000000000000000000000000000000000000000..4c907b6a474f0534bd5b9c4b76f7fa89bbf801df --- /dev/null +++ b/java_gui/nbproject/project.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://www.netbeans.org/ns/project/1"> + <type>org.netbeans.modules.java.j2seproject</type> + <configuration> + <data xmlns="http://www.netbeans.org/ns/j2se-project/3"> + <name>bgslibrary_gui</name> + <source-roots> + <root id="src.dir"/> + </source-roots> + <test-roots/> + </data> + </configuration> +</project> diff --git a/java_gui/run_camera.bat b/java_gui/run_camera.bat new file mode 100644 index 0000000000000000000000000000000000000000..672229f6755ef00727eca7d1b2c183c24612ef13 --- /dev/null +++ b/java_gui/run_camera.bat @@ -0,0 +1,2 @@ +@echo off +bgslibrary.exe --use_cam --camera=0 \ No newline at end of file diff --git a/java_gui/run_java_gui.bat b/java_gui/run_java_gui.bat new file mode 100644 index 0000000000000000000000000000000000000000..b3b0b31182ad59513f6130512e1bc917aa4990d3 --- /dev/null +++ b/java_gui/run_java_gui.bat @@ -0,0 +1 @@ +@start javaw -jar bgslibrary_gui.jar diff --git a/java_gui/run_java_gui_with_console.bat b/java_gui/run_java_gui_with_console.bat new file mode 100644 index 0000000000000000000000000000000000000000..96640572fbe1ff62264bb7d7a67fb514dbb0995f --- /dev/null +++ b/java_gui/run_java_gui_with_console.bat @@ -0,0 +1 @@ +java -jar bgslibrary_gui.jar diff --git a/java_gui/run_video.bat b/java_gui/run_video.bat new file mode 100644 index 0000000000000000000000000000000000000000..6193b8823c37560d4dd059f79e4d4e94fe89fd26 --- /dev/null +++ b/java_gui/run_video.bat @@ -0,0 +1,2 @@ +@echo off +bgslibrary.exe -uf -fn=../dataset/video.avi \ No newline at end of file diff --git a/java_gui/src/br/com/bgslibrary/Main.java b/java_gui/src/br/com/bgslibrary/Main.java new file mode 100644 index 0000000000000000000000000000000000000000..f986a21bee6833ecc9ece0ccd587bb4cad44543d --- /dev/null +++ b/java_gui/src/br/com/bgslibrary/Main.java @@ -0,0 +1,55 @@ +/* +This file is part of BGSLibrary. + +BGSLibrary is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +BGSLibrary is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with BGSLibrary. If not, see <http://www.gnu.org/licenses/>. +*/ +package br.com.bgslibrary; + +import br.com.bgslibrary.gui.MainFrame; + +public class Main +{ + public static void main(String args[]) + { + try + { + if(System.getProperty("os.name").toLowerCase().contains("windows")) + javax.swing.UIManager.setLookAndFeel(new com.sun.java.swing.plaf.windows.WindowsLookAndFeel()); + /* + for(javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) + { + //System.out.println("LookAndFeel: " + info.getName()); + if("Nimbus".equals(info.getName())) + { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + */ + } + catch(Exception ex) + { + java.util.logging.Logger.getLogger(MainFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + java.awt.EventQueue.invokeLater(new Runnable() + { + @Override + public void run() + { + new MainFrame().setVisible(true); + } + }); + } +} diff --git a/java_gui/src/br/com/bgslibrary/entity/Command.java b/java_gui/src/br/com/bgslibrary/entity/Command.java new file mode 100644 index 0000000000000000000000000000000000000000..57abcf4bb9b8aacf6ad5c0a1cebbcf886c06b99b --- /dev/null +++ b/java_gui/src/br/com/bgslibrary/entity/Command.java @@ -0,0 +1,158 @@ +/* +This file is part of BGSLibrary. + +BGSLibrary is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +BGSLibrary is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with BGSLibrary. If not, see <http://www.gnu.org/licenses/>. +*/ +package br.com.bgslibrary.entity; + +public class Command +{ + private static String base; + private static boolean useCamera; + private static int cameraIndex; + private static boolean useVideo; + private static String inputFile; + private static boolean useDataset; + private static String datasetFolder; + private static String trainFile; + private static String testFile; + private static boolean useForegroundMaskAnalysis; + private static String imageRefFile; + private static int compareAt; + + public static void init() + { + base = "./"; + useCamera = false; + cameraIndex = 0; + useVideo = false; + inputFile = ""; + useDataset = false; + datasetFolder = ""; + trainFile = ""; + testFile = ""; + useForegroundMaskAnalysis = false; + imageRefFile = ""; + compareAt = 0; + } + + public static void setBase(String aBase) + { + base = aBase; + } + + public static void setUseCamera() + { + useCamera = true; + useVideo = false; + useDataset = false; + } + + public static void setCameraIndex(int aCameraIndex) + { + cameraIndex = aCameraIndex; + } + + public static void setUseVideo() + { + useCamera = false; + useVideo = true; + useDataset = false; + } + + public static void setInputFile(String aInputFile) + { + inputFile = aInputFile; + } + + public static void setUseDataset() + { + useCamera = false; + useVideo = false; + useDataset = true; + } + + public static void setDatasetFolder(String aDatasetFolder) + { + datasetFolder = aDatasetFolder; + } + + public static void setTrainFile(String aTrainFile) + { + trainFile = aTrainFile; + } + + public static void setTestFile(String aTestFile) + { + testFile = aTestFile; + } + + public static void setUseForegroundMaskAnalysis(boolean aUseForegroundMaskAnalysis) + { + useForegroundMaskAnalysis = aUseForegroundMaskAnalysis; + } + + public static void setImageRefFile(String aImageRefFile) + { + imageRefFile = aImageRefFile; + } + + public static void setCompareAt(int aCompareAt) + { + compareAt = aCompareAt; + } + + public static boolean validade() + { + boolean ok = true; + + if(useCamera == false && useVideo == false && useDataset == false) + ok = false; + + if(useVideo == true && inputFile.isEmpty()) + ok = false; + + if(useDataset == true && (datasetFolder.isEmpty() || trainFile.isEmpty() || testFile.isEmpty())) + ok = false; + + if(useForegroundMaskAnalysis == true && imageRefFile.isEmpty()) + ok = false; + + return ok; + } + + public static String getString() + { + StringBuilder sb = new StringBuilder(); + + //if(validade()) + { + sb.append(base).append("bgslibrary.exe "); + + if(useCamera) + sb.append("--use_cam=true --camera=").append(cameraIndex).append(" "); + + if(useVideo) + sb.append("--use_file=true --filename=").append(inputFile).append(" "); + + if(useDataset) + sb.append("--use_dset=true --dset_dir=").append(datasetFolder).append(" --train=").append(trainFile).append(" --test=").append(testFile).append(" "); + + if(useForegroundMaskAnalysis) + sb.append("--use_comp=true --stopAt=").append(compareAt).append(" --imgref=").append(imageRefFile).append(" "); + } + + return sb.toString(); + } +} diff --git a/java_gui/src/br/com/bgslibrary/entity/Configuration.java b/java_gui/src/br/com/bgslibrary/entity/Configuration.java new file mode 100644 index 0000000000000000000000000000000000000000..5c69f342816440de21e6612d16197f52febec9cb --- /dev/null +++ b/java_gui/src/br/com/bgslibrary/entity/Configuration.java @@ -0,0 +1,61 @@ +/* +This file is part of BGSLibrary. + +BGSLibrary is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +BGSLibrary is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with BGSLibrary. If not, see <http://www.gnu.org/licenses/>. +*/ +package br.com.bgslibrary.entity; + +public interface Configuration +{ + final String FrameProcessor = "FrameProcessor.xml"; + final String VideoCapture = "VideoCapture.xml"; + final String PreProcessor = "PreProcessor.xml"; + final String ForegroundMaskAnalysis = "ForegroundMaskAnalysis.xml"; + + final String FrameDifferenceBGS = "FrameDifferenceBGS.xml"; + final String StaticFrameDifferenceBGS = "StaticFrameDifferenceBGS.xml"; + final String WeightedMovingMeanBGS = "WeightedMovingMeanBGS.xml"; + final String WeightedMovingVarianceBGS = "WeightedMovingVarianceBGS.xml"; + final String AdaptiveBackgroundLearning = "AdaptiveBackgroundLearning.xml"; + final String MixtureOfGaussianV1BGS = "MixtureOfGaussianV1BGS.xml"; + final String MixtureOfGaussianV2BGS = "MixtureOfGaussianV2BGS.xml"; + final String GMG = "GMG.xml"; + + final String DPAdaptiveMedianBGS = "DPAdaptiveMedianBGS.xml"; + final String DPEigenbackgroundBGS = "DPEigenbackgroundBGS.xml"; + final String DPGrimsonGMMBGS = "DPGrimsonGMMBGS.xml"; + final String DPMeanBGS = "DPMeanBGS.xml"; + final String DPPratiMediodBGS = "DPPratiMediodBGS.xml"; + final String DPWrenGABGS = "DPWrenGABGS.xml"; + final String DPZivkovicAGMMBGS = "DPZivkovicAGMMBGS.xml"; + + final String LBAdaptiveSOM = "LBAdaptiveSOM.xml"; + final String LBFuzzyAdaptiveSOM = "LBFuzzyAdaptiveSOM.xml"; + final String LBFuzzyGaussian = "LBFuzzyGaussian.xml"; + final String LBMixtureOfGaussians = "LBMixtureOfGaussians.xml"; + final String LBSimpleGaussian = "LBSimpleGaussian.xml"; + + final String MultiLayerBGS = "MultiLayerBGS.xml"; + + //final String PBAS = "PixelBasedAdaptiveSegmenter.xml"; + + final String VuMeter = "VuMeter.xml"; + + final String T2FGMM_UM = "T2FGMM_UM.xml"; + final String T2FGMM_UV = "T2FGMM_UV.xml"; + final String T2FMRF_UM = "T2FMRF_UM.xml"; + final String T2FMRF_UV = "T2FMRF_UV.xml"; + final String FuzzySugenoIntegral = "FuzzySugenoIntegral.xml"; + final String FuzzyChoquetIntegral = "FuzzyChoquetIntegral.xml"; +} diff --git a/java_gui/src/br/com/bgslibrary/gui/AboutDialog.form b/java_gui/src/br/com/bgslibrary/gui/AboutDialog.form new file mode 100644 index 0000000000000000000000000000000000000000..fd87cce1598fa105d7d95bde33b009ed0d37a0c4 --- /dev/null +++ b/java_gui/src/br/com/bgslibrary/gui/AboutDialog.form @@ -0,0 +1,128 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JDialogFormInfo"> + <NonVisualComponents> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel2"/> + </Properties> + </Component> + </NonVisualComponents> + <Properties> + <Property name="defaultCloseOperation" type="int" value="2"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="false"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + </AuxValues> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="103" groupAlignment="0" max="-2" attributes="0"> + <Component id="jLabel1" alignment="0" max="32767" attributes="0"/> + <Group type="102" alignment="0" attributes="0"> + <Component id="jLabel3" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel8" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="jLabel5" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel7" min="-2" max="-2" attributes="0"/> + </Group> + <Component id="jSeparator1" alignment="0" max="32767" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="jLabel4" min="-2" max="-2" attributes="0"/> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Component id="jLabel6" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel1" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jSeparator1" min="-2" pref="10" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel3" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel8" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel5" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel7" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel4" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel6" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/br/com/bgslibrary/resources/logo.jpg"/> + </Property> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel3"> + <Properties> + <Property name="text" type="java.lang.String" value="Author:"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel5"> + <Properties> + <Property name="text" type="java.lang.String" value="Version:"/> + </Properties> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator1"> + </Component> + <Component class="javax.swing.JLabel" name="jLabel4"> + <Properties> + <Property name="text" type="java.lang.String" value="Web:"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel6"> + <Properties> + <Property name="text" type="java.lang.String" value="https://github.com/andrewssobral/bgslibrary"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel7"> + <Properties> + <Property name="text" type="java.lang.String" value="1.0.4"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel8"> + <Properties> + <Property name="text" type="java.lang.String" value="Andrews Sobral - andrewssobral@gmail.com"/> + </Properties> + </Component> + </SubComponents> +</Form> diff --git a/java_gui/src/br/com/bgslibrary/gui/AboutDialog.java b/java_gui/src/br/com/bgslibrary/gui/AboutDialog.java new file mode 100644 index 0000000000000000000000000000000000000000..2c8afc01d03d3402081a07657535b3f7ee872c61 --- /dev/null +++ b/java_gui/src/br/com/bgslibrary/gui/AboutDialog.java @@ -0,0 +1,124 @@ +/* +This file is part of BGSLibrary. + +BGSLibrary is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +BGSLibrary is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with BGSLibrary. If not, see <http://www.gnu.org/licenses/>. +*/ +package br.com.bgslibrary.gui; + +public class AboutDialog extends javax.swing.JDialog +{ + public AboutDialog(java.awt.Frame parent, boolean modal) + { + super(parent, modal); + initComponents(); + this.setLocationRelativeTo(getRootPane()); + } + + /** + * This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The + * content of this method is always regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() + { + + jLabel2 = new javax.swing.JLabel(); + jLabel1 = new javax.swing.JLabel(); + jLabel3 = new javax.swing.JLabel(); + jLabel5 = new javax.swing.JLabel(); + jSeparator1 = new javax.swing.JSeparator(); + jLabel4 = new javax.swing.JLabel(); + jLabel6 = new javax.swing.JLabel(); + jLabel7 = new javax.swing.JLabel(); + jLabel8 = new javax.swing.JLabel(); + + jLabel2.setText("jLabel2"); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + + jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/br/com/bgslibrary/resources/logo.jpg"))); // NOI18N + + jLabel3.setText("Author:"); + + jLabel5.setText("Version:"); + + jLabel4.setText("Web:"); + + jLabel6.setText("https://github.com/andrewssobral/bgslibrary"); + + jLabel7.setText("1.0.4"); + + jLabel8.setText("Andrews Sobral - andrewssobral@gmail.com"); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(layout.createSequentialGroup() + .addComponent(jLabel3) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel8)) + .addGroup(layout.createSequentialGroup() + .addComponent(jLabel5) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel7)) + .addComponent(jSeparator1)) + .addGroup(layout.createSequentialGroup() + .addComponent(jLabel4) + .addGap(18, 18, 18) + .addComponent(jLabel6))) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel1) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel3) + .addComponent(jLabel8)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel5) + .addComponent(jLabel7)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel4) + .addComponent(jLabel6)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + pack(); + }// </editor-fold>//GEN-END:initComponents + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JLabel jLabel7; + private javax.swing.JLabel jLabel8; + private javax.swing.JSeparator jSeparator1; + // End of variables declaration//GEN-END:variables +} diff --git a/java_gui/src/br/com/bgslibrary/gui/MainFrame.form b/java_gui/src/br/com/bgslibrary/gui/MainFrame.form new file mode 100644 index 0000000000000000000000000000000000000000..1cc7c3bed15fc833549eac4df8d2d5467ea763b5 --- /dev/null +++ b/java_gui/src/br/com/bgslibrary/gui/MainFrame.form @@ -0,0 +1,2243 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <NonVisualComponents> + <Container class="javax.swing.JMenuBar" name="jMenuBar1"> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="true"/> + </Layout> + <SubComponents> + <Menu class="javax.swing.JMenu" name="jMenu1"> + <Properties> + <Property name="text" type="java.lang.String" value="File"/> + </Properties> + </Menu> + <Menu class="javax.swing.JMenu" name="jMenu2"> + <Properties> + <Property name="text" type="java.lang.String" value="Edit"/> + </Properties> + </Menu> + </SubComponents> + </Container> + <Menu class="javax.swing.JMenuBar" name="jMenuBar2"> + <SubComponents> + <Menu class="javax.swing.JMenu" name="jMenu3"> + <Properties> + <Property name="text" type="java.lang.String" value="App"/> + </Properties> + <SubComponents> + <MenuItem class="javax.swing.JMenuItem" name="jMenuItem1"> + <Properties> + <Property name="text" type="java.lang.String" value="Exit"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jMenuItem1ActionPerformed"/> + </Events> + </MenuItem> + </SubComponents> + </Menu> + <Menu class="javax.swing.JMenu" name="jMenu4"> + <Properties> + <Property name="text" type="java.lang.String" value="Help"/> + </Properties> + <SubComponents> + <MenuItem class="javax.swing.JMenuItem" name="jMenuItem2"> + <Properties> + <Property name="text" type="java.lang.String" value="About"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jMenuItem2ActionPerformed"/> + </Events> + </MenuItem> + </SubComponents> + </Menu> + </SubComponents> + </Menu> + </NonVisualComponents> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + <Property name="title" type="java.lang.String" value="BGSLibrary GUI"/> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="menuBar" type="java.lang.String" value="jMenuBar2"/> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="false"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + </AuxValues> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="appTabbedPane" min="-2" max="-2" attributes="0"/> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="appTabbedPane" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JTabbedPane" name="appTabbedPane"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription"> + <JTabbedPaneConstraints tabName="Main"> + <Property name="tabTitle" type="java.lang.String" value="Main"/> + </JTabbedPaneConstraints> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jPanel4" alignment="0" max="32767" attributes="0"/> + <Group type="102" alignment="0" attributes="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="103" groupAlignment="0" max="-2" attributes="0"> + <Component id="jPanel6" alignment="0" max="32767" attributes="0"/> + <Component id="jPanel3" alignment="0" max="32767" attributes="0"/> + </Group> + <Component id="jPanel7" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace pref="148" max="32767" attributes="0"/> + <Component id="runButton" min="-2" pref="80" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel4" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Component id="jPanel7" min="-2" pref="65" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel3" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel6" min="-2" max="-2" attributes="0"/> + </Group> + <Component id="runButton" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace pref="245" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel3"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Input"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="useCameraRadioButton" alignment="0" min="-2" pref="100" max="-2" attributes="0"/> + <Component id="useVideoRadioButton" alignment="0" min="-2" pref="100" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Component id="jLabel2" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="cameraIndexTextField" min="-2" pref="25" max="-2" attributes="0"/> + </Group> + <Component id="setInputFileButton" alignment="0" min="-2" pref="120" max="-2" attributes="0"/> + </Group> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="useDatasetRadioButton" min="-2" pref="100" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="setDatasetFolderButton" min="-2" pref="140" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="setTrainFileButton" min="-2" pref="120" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="setTestFileButton" min="-2" pref="120" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="useCameraRadioButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="cameraIndexTextField" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel2" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="unrelated" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="useVideoRadioButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="setInputFileButton" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="unrelated" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="useDatasetRadioButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="setDatasetFolderButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="setTrainFileButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="setTestFileButton" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JRadioButton" name="useCameraRadioButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Use camera"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="useCameraRadioButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JRadioButton" name="useVideoRadioButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Use video file"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="useVideoRadioButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JRadioButton" name="useDatasetRadioButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Use dataset"/> + <Property name="enabled" type="boolean" value="false"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="useDatasetRadioButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JTextField" name="cameraIndexTextField"> + <Properties> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="0"/> + </Properties> + </Component> + <Component class="javax.swing.JButton" name="setInputFileButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Set input file"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="setInputFileButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="setDatasetFolderButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Set dataset folder"/> + <Property name="enabled" type="boolean" value="false"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="setDatasetFolderButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="setTrainFileButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Set train file"/> + <Property name="enabled" type="boolean" value="false"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="setTrainFileButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="setTestFileButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Set test file"/> + <Property name="enabled" type="boolean" value="false"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="setTestFileButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="text" type="java.lang.String" value="Camera index:"/> + </Properties> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel4"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Command Line"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="cmdTextField" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="cmdTextField" min="-2" max="-2" attributes="0"/> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JTextField" name="cmdTextField"> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel6"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Options"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="useForegroundMaskAnalysisCheckBox" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="setImageRefButton" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel1" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="compareAtTextField" min="-2" pref="50" max="-2" attributes="0"/> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="useForegroundMaskAnalysisCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="setImageRefButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel1" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="compareAtTextField" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JCheckBox" name="useForegroundMaskAnalysisCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Use Foreground Mask Analysis"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="useForegroundMaskAnalysisCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="setImageRefButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Set Image Ref"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="setImageRefButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="text" type="java.lang.String" value="Compare at frame:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="compareAtTextField"> + <Properties> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="0"/> + </Properties> + <Events> + <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="compareAtTextFieldFocusLost"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel7"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Saves"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel3" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="loadConfigComboBox" pref="205" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="editButton" min="-2" pref="60" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel3" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="loadConfigComboBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="editButton" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel3"> + <Properties> + <Property name="text" type="java.lang.String" value="Load:"/> + </Properties> + </Component> + <Component class="javax.swing.JComboBox" name="loadConfigComboBox"> + <Properties> + <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor"> + <StringArray count="0"/> + </Property> + </Properties> + <Events> + <EventHandler event="itemStateChanged" listener="java.awt.event.ItemListener" parameters="java.awt.event.ItemEvent" handler="loadConfigComboBoxItemStateChanged"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="editButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Edit"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="editButtonActionPerformed"/> + </Events> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JButton" name="runButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Run"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="runButtonActionPerformed"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel2"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription"> + <JTabbedPaneConstraints tabName="Config"> + <Property name="tabTitle" type="java.lang.String" value="Config"/> + </JTabbedPaneConstraints> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <Component id="jPanel11" min="-2" max="-2" attributes="0"/> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="jPanel9" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel10" min="-2" max="-2" attributes="0"/> + <EmptySpace max="32767" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="reloadButton" alignment="1" min="-2" pref="80" max="-2" attributes="0"/> + <Component id="runButton2" alignment="1" min="-2" pref="80" max="-2" attributes="0"/> + </Group> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Component id="reloadButton" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="runButton2" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="103" groupAlignment="0" max="-2" attributes="0"> + <Component id="jPanel10" max="32767" attributes="0"/> + <Component id="jPanel9" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel11" max="32767" attributes="0"/> + <EmptySpace min="-2" max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel9"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Video Capture Module"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Component id="jLabel4" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="resizeFrameTextField" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel5" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="jLabel6" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="stopVideoAtTextField" min="-2" pref="50" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="verticalFlipCheckBox" min="-2" max="-2" attributes="0"/> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Component id="showOutputCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel4" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="resizeFrameTextField" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel5" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="unrelated" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel6" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="stopVideoAtTextField" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="unrelated" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="verticalFlipCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="showOutputCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace pref="14" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel4"> + <Properties> + <Property name="text" type="java.lang.String" value="Resize frame:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="resizeFrameTextField"> + <Properties> + <Property name="text" type="java.lang.String" value="100"/> + </Properties> + <Events> + <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="resizeFrameTextFieldFocusLost"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel5"> + <Properties> + <Property name="text" type="java.lang.String" value="%"/> + </Properties> + </Component> + <Component class="javax.swing.JCheckBox" name="verticalFlipCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Vertical Flip"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="verticalFlipCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel6"> + <Properties> + <Property name="text" type="java.lang.String" value="Stop video at frame:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="stopVideoAtTextField"> + <Properties> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="0"/> + </Properties> + <Events> + <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="stopVideoAtTextFieldFocusLost"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="showOutputCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Show output"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="showOutputCheckBoxActionPerformed"/> + </Events> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JButton" name="reloadButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Reload"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="reloadButtonActionPerformed"/> + </Events> + </Component> + <Container class="javax.swing.JPanel" name="jPanel10"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Region of Interest (ROI)"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <Component id="useROICheckBox" min="-2" max="-2" attributes="0"/> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Component id="ROIdefinedCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="jLabel7" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="x0ROITextField" min="-2" pref="50" max="-2" attributes="0"/> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Component id="jLabel9" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="x1ROITextField" min="-2" pref="50" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="jLabel8" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="y0ROITextField" min="-2" pref="50" max="-2" attributes="0"/> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Component id="jLabel10" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="y1ROITextField" min="-2" pref="50" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="useROICheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="ROIdefinedCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="unrelated" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel7" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="x0ROITextField" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel9" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="x1ROITextField" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="unrelated" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel8" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="y0ROITextField" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel10" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="y1ROITextField" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JCheckBox" name="useROICheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Use ROI"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="useROICheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="ROIdefinedCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="ROI defined"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="ROIdefinedCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel7"> + <Properties> + <Property name="text" type="java.lang.String" value="X0:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="x0ROITextField"> + <Properties> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="0"/> + </Properties> + <Events> + <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="x0ROITextFieldFocusLost"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel8"> + <Properties> + <Property name="text" type="java.lang.String" value="Y0:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="y0ROITextField"> + <Properties> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="0"/> + </Properties> + <Events> + <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="y0ROITextFieldFocusLost"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel9"> + <Properties> + <Property name="text" type="java.lang.String" value="X1:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="x1ROITextField"> + <Properties> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="0"/> + </Properties> + <Events> + <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="x1ROITextFieldFocusLost"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel10"> + <Properties> + <Property name="text" type="java.lang.String" value="Y1:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="y1ROITextField"> + <Properties> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="0"/> + </Properties> + <Events> + <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="y1ROITextFieldFocusLost"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel11"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Frame Processor Module"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jLabel11" max="32767" attributes="0"/> + <Group type="102" alignment="0" attributes="0"> + <Group type="103" groupAlignment="1" attributes="0"> + <Component id="jPanel13" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="jPanel12" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel11" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel12" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel13" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel11"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Tahoma" size="12" style="1"/> + </Property> + <Property name="horizontalAlignment" type="int" value="0"/> + <Property name="text" type="java.lang.String" value="Modules"/> + </Properties> + </Component> + <Container class="javax.swing.JPanel" name="jPanel12"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Processors"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <Component id="preProcessorLabel" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="21" pref="21" max="-2" attributes="0"/> + <Component id="jLabel34" min="-2" pref="72" max="-2" attributes="0"/> + <EmptySpace min="-2" pref="22" max="-2" attributes="0"/> + <Component id="tictocComboBox" pref="143" max="32767" attributes="0"/> + </Group> + <Component id="preProcessorCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="foregroundMaskAnalysisLabel" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="foregroundMaskAnalysisCheckBox" min="-2" max="-2" attributes="0"/> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="preProcessorCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="preProcessorLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="foregroundMaskAnalysisCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="foregroundMaskAnalysisLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace min="-2" pref="1" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="tictocComboBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="jLabel34" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace pref="14" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JCheckBox" name="preProcessorCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="PreProcessor"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="preProcessorCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JComboBox" name="tictocComboBox"> + <Events> + <EventHandler event="itemStateChanged" listener="java.awt.event.ItemListener" parameters="java.awt.event.ItemEvent" handler="tictocComboBoxItemStateChanged"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="preProcessorLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="preProcessorLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="jLabel34"> + <Properties> + <Property name="text" type="java.lang.String" value="Performance"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="foregroundMaskAnalysisLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="foregroundMaskAnalysisLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="foregroundMaskAnalysisCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Foreground Mask Analysis"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="foregroundMaskAnalysisCheckBoxActionPerformed"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel13"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="Background Subtraction Methods"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="frameDifferenceLabel" alignment="1" min="-2" max="-2" attributes="0"/> + <Component id="staticFrameDifferenceLabel" alignment="1" min="-2" max="-2" attributes="0"/> + <Component id="weightedMovingMeanLabel" alignment="1" min="-2" max="-2" attributes="0"/> + <Component id="weightedMovingVarianceLabel" alignment="1" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveBackgroundLearningLabel" alignment="1" min="-2" max="-2" attributes="0"/> + <Component id="openCVMoGV1Label" alignment="1" min="-2" max="-2" attributes="0"/> + <Component id="openCVMoGV2Label" alignment="1" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="staticFrameDifferenceCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="weightedMovingMeanCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="weightedMovingVarianceCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveBackgroundLearningCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="frameDifferenceCheckBox" min="-2" max="-2" attributes="0"/> + <Component id="openCVMoGV1CheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="openCVMoGV2CheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="grimsonGMMLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="zivkovicGMMLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="temporalMeanLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="gaussianAverageLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="eigenbackgroundLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="temporalMedianLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveMedianLabel" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="grimsonGMMCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="gaussianAverageCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="eigenbackgroundCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="temporalMedianCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="zivkovicGMMCheckBox" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveMedianCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="temporalMeanCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="fuzzyGaussianLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="simpleGaussianLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="T2FGMMUVLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="mixtureOfGaussiansLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveSOMLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyAdaptiveSOMLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="T2FGMMUMLabel" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="T2FGMMUVCheckBox" min="-2" max="-2" attributes="0"/> + <Component id="T2FGMMUMCheckBox" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyAdaptiveSOMCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="simpleGaussianCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="mixtureOfGaussiansCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyGaussianCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveSOMCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <Component id="fuzzySugenoIntegralLabel" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="fuzzySugenoIntegralCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="fuzzyChoquetIntegralLabel" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="fuzzyChoquetIntegralCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="multiLayerBGSLabel" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="multiLayerBGSCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="T2FMRFUVLabel" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="T2FMRFUMLabel" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="T2FMRFUVCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="T2FMRFUMCheckBox" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <Group type="102" attributes="0"> + <Component id="GMGLabel" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="GMGCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="VuMeterLabel" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="VuMeterCheckBox" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Component id="checkAllButton" min="-2" pref="100" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="uncheckAllButton" min="-2" pref="100" max="-2" attributes="0"/> + <EmptySpace max="32767" attributes="0"/> + <Component id="openConfigButton" min="-2" pref="100" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="frameDifferenceCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="temporalMeanCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="simpleGaussianCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="frameDifferenceLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="temporalMeanLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="simpleGaussianLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="staticFrameDifferenceCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveMedianCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyGaussianCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="staticFrameDifferenceLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveMedianLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyGaussianLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="weightedMovingMeanCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="temporalMedianCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="mixtureOfGaussiansCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="weightedMovingMeanLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="temporalMedianLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="mixtureOfGaussiansLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="weightedMovingVarianceCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="eigenbackgroundCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveSOMCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="weightedMovingVarianceLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="eigenbackgroundLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveSOMLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="adaptiveBackgroundLearningCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="gaussianAverageCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyAdaptiveSOMCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="adaptiveBackgroundLearningLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="gaussianAverageLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyAdaptiveSOMLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="openCVMoGV1CheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="grimsonGMMCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="T2FGMMUMCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="openCVMoGV1Label" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="grimsonGMMLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="T2FGMMUMLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="openCVMoGV2CheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="zivkovicGMMCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="T2FGMMUVCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="openCVMoGV2Label" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="zivkovicGMMLabel" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="T2FGMMUVLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <Group type="102" alignment="0" attributes="0"> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="T2FMRFUMCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="T2FMRFUMLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="T2FMRFUVCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="T2FMRFUVLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="24" pref="24" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="fuzzyChoquetIntegralCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="fuzzyChoquetIntegralLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="multiLayerBGSCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="multiLayerBGSLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <Group type="103" alignment="0" groupAlignment="3" attributes="0"> + <Component id="fuzzySugenoIntegralCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="fuzzySugenoIntegralLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="GMGCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="GMGLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="VuMeterCheckBox" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="VuMeterLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + </Group> + <EmptySpace pref="30" max="32767" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="checkAllButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="uncheckAllButton" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="openConfigButton" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JCheckBox" name="frameDifferenceCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Frame Difference"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="frameDifferenceCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="staticFrameDifferenceCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Static Frame Difference"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="staticFrameDifferenceCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="weightedMovingMeanCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Weighted Moving Mean"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="weightedMovingMeanCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="weightedMovingVarianceCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Weighted Moving Variance"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="weightedMovingVarianceCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="openCVMoGV1CheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="OpenCV MoG V1"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="openCVMoGV1CheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="openCVMoGV2CheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="OpenCV MoG V2"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="openCVMoGV2CheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="adaptiveBackgroundLearningCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Adaptive Background Learning"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="adaptiveBackgroundLearningCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="gaussianAverageCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Gaussian Average"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="gaussianAverageCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="eigenbackgroundCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="SL-PCA / Eigenbackground"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="eigenbackgroundCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="temporalMedianCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Temporal Median"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="temporalMedianCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="adaptiveMedianCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Adaptive Median"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="adaptiveMedianCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="temporalMeanCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Temporal Mean"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="temporalMeanCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="grimsonGMMCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Grimson GMM"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="grimsonGMMCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="zivkovicGMMCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Zivkovic GMM"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="zivkovicGMMCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="adaptiveSOMCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Adaptive SOM"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="adaptiveSOMCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="mixtureOfGaussiansCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Mixture of Gaussians"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="mixtureOfGaussiansCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="fuzzyGaussianCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Fuzzy Gaussian"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="fuzzyGaussianCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="simpleGaussianCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Simple Gaussian"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="simpleGaussianCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="fuzzyAdaptiveSOMCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Fuzzy Adaptive SOM"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="fuzzyAdaptiveSOMCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="T2FGMMUMCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="T2F GMM - UM"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="T2FGMMUMCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="T2FGMMUVCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="T2F GMM - UV"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="T2FGMMUVCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="frameDifferenceLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="frameDifferenceLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="staticFrameDifferenceLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="staticFrameDifferenceLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="weightedMovingMeanLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="weightedMovingMeanLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="weightedMovingVarianceLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="weightedMovingVarianceLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="adaptiveBackgroundLearningLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="adaptiveBackgroundLearningLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="openCVMoGV1Label"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="openCVMoGV1LabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="openCVMoGV2Label"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="openCVMoGV2LabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="zivkovicGMMLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="zivkovicGMMLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="grimsonGMMLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="grimsonGMMLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="gaussianAverageLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="gaussianAverageLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="eigenbackgroundLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="eigenbackgroundLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="temporalMedianLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="temporalMedianLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="adaptiveMedianLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="adaptiveMedianLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="temporalMeanLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="temporalMeanLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="simpleGaussianLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="simpleGaussianLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="fuzzyGaussianLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="fuzzyGaussianLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="mixtureOfGaussiansLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="mixtureOfGaussiansLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="adaptiveSOMLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="adaptiveSOMLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="fuzzyAdaptiveSOMLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="fuzzyAdaptiveSOMLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="T2FGMMUMLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="T2FGMMUMLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="T2FGMMUVLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="T2FGMMUVLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="multiLayerBGSLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="multiLayerBGSLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="multiLayerBGSCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Multi Layer BGS"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="multiLayerBGSCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="checkAllButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Check All"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="checkAllButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="uncheckAllButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Uncheck All"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="uncheckAllButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="openConfigButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Open"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="openConfigButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="fuzzySugenoIntegralLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="fuzzySugenoIntegralLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="fuzzySugenoIntegralCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Fuzzy Sugeno Integral"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="fuzzySugenoIntegralCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="fuzzyChoquetIntegralLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="fuzzyChoquetIntegralLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="fuzzyChoquetIntegralCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="Fuzzy Choquet Integral"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="fuzzyChoquetIntegralCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="T2FMRFUMLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="T2FMRFUMLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="T2FMRFUMCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="T2F MRF - UM"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="T2FMRFUMCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="T2FMRFUVLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="T2FMRFUVLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="T2FMRFUVCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="T2F MRF - UV"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="T2FMRFUVCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="GMGCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="GMG"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="GMGCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="GMGLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="GMGLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="VuMeterLabel"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="0" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="C"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo"> + <EtchetBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="VuMeterLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JCheckBox" name="VuMeterCheckBox"> + <Properties> + <Property name="text" type="java.lang.String" value="VuMeter"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="VuMeterCheckBoxActionPerformed"/> + </Events> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Component class="javax.swing.JButton" name="runButton2"> + <Properties> + <Property name="text" type="java.lang.String" value="Run"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="runButton2ActionPerformed"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel16"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription"> + <JTabbedPaneConstraints tabName="Editor"> + <Property name="tabTitle" type="java.lang.String" value="Editor"/> + </JTabbedPaneConstraints> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Component id="jToolBar1" min="-2" max="-2" attributes="0"/> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + <Component id="jPanel17" max="32767" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jToolBar1" min="-2" pref="25" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jPanel17" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JToolBar" name="jToolBar1"> + <Properties> + <Property name="floatable" type="boolean" value="false"/> + </Properties> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout"/> + <SubComponents> + <Component class="javax.swing.JButton" name="saveButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Save"/> + <Property name="focusable" type="boolean" value="false"/> + <Property name="horizontalTextPosition" type="int" value="0"/> + <Property name="verticalTextPosition" type="int" value="3"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="saveButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JToolBar$Separator" name="jSeparator1"> + </Component> + <Component class="javax.swing.JButton" name="returnButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Return"/> + <Property name="focusable" type="boolean" value="false"/> + <Property name="horizontalTextPosition" type="int" value="0"/> + <Property name="verticalTextPosition" type="int" value="3"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="returnButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JToolBar$Separator" name="jSeparator3"> + </Component> + <Component class="javax.swing.JButton" name="runButton3"> + <Properties> + <Property name="text" type="java.lang.String" value="Run"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="runButton3ActionPerformed"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel17"> + <Properties> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo"> + <TitledBorder title="File Content"/> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Component id="jLabel12" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="fileNameLabel" min="-2" pref="200" max="-2" attributes="0"/> + </Group> + <Component id="jScrollPane1" min="-2" pref="710" max="-2" attributes="0"/> + </Group> + <EmptySpace pref="18" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jScrollPane1" pref="487" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel12" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="fileNameLabel" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JScrollPane" name="jScrollPane1"> + <Properties> + <Property name="autoscrolls" type="boolean" value="true"/> + <Property name="doubleBuffered" type="boolean" value="true"/> + </Properties> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTextPane" name="fileContentTextPane"> + <Properties> + <Property name="doubleBuffered" type="boolean" value="true"/> + </Properties> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="jLabel12"> + <Properties> + <Property name="text" type="java.lang.String" value="File name:"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="fileNameLabel"> + <Properties> + <Property name="text" type="java.lang.String" value="_"/> + </Properties> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel18"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription"> + <JTabbedPaneConstraints tabName="Log"> + <Property name="tabTitle" type="java.lang.String" value="Log"/> + </JTabbedPaneConstraints> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="logTextScrollPane" min="-2" pref="741" max="-2" attributes="0"/> + <Component id="jToolBar2" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace pref="19" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="1" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jToolBar2" min="-2" pref="25" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="logTextScrollPane" pref="552" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JScrollPane" name="logTextScrollPane"> + <Properties> + <Property name="doubleBuffered" type="boolean" value="true"/> + </Properties> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTextPane" name="logTextPane"> + <Properties> + <Property name="editable" type="boolean" value="false"/> + <Property name="doubleBuffered" type="boolean" value="true"/> + </Properties> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JToolBar" name="jToolBar2"> + <Properties> + <Property name="floatable" type="boolean" value="false"/> + </Properties> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout"/> + <SubComponents> + <Component class="javax.swing.JButton" name="clearButton"> + <Properties> + <Property name="text" type="java.lang.String" value="Clear"/> + <Property name="focusable" type="boolean" value="false"/> + <Property name="horizontalTextPosition" type="int" value="0"/> + <Property name="verticalTextPosition" type="int" value="3"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="clearButtonActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JToolBar$Separator" name="jSeparator4"> + </Component> + <Component class="javax.swing.JButton" name="runButton4"> + <Properties> + <Property name="text" type="java.lang.String" value="Run"/> + <Property name="focusable" type="boolean" value="false"/> + <Property name="horizontalTextPosition" type="int" value="0"/> + <Property name="verticalTextPosition" type="int" value="3"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="runButton4ActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JToolBar$Separator" name="jSeparator2"> + </Component> + <Component class="javax.swing.JButton" name="returnButton2"> + <Properties> + <Property name="text" type="java.lang.String" value="Return"/> + <Property name="focusable" type="boolean" value="false"/> + <Property name="horizontalTextPosition" type="int" value="0"/> + <Property name="verticalTextPosition" type="int" value="3"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="returnButton2ActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JToolBar$Separator" name="jSeparator5"> + </Component> + <Component class="javax.swing.JCheckBox" name="autoscrollCheckBox"> + <Properties> + <Property name="focusable" type="boolean" value="false"/> + <Property name="horizontalTextPosition" type="int" value="0"/> + <Property name="verticalTextPosition" type="int" value="3"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="autoscrollCheckBoxActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="autoscrollLabel"> + <Properties> + <Property name="text" type="java.lang.String" value=" Autoscroll"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="autoscrollLabelMouseClicked"/> + </Events> + </Component> + <Component class="javax.swing.JToolBar$Separator" name="jSeparator6"> + </Component> + <Component class="javax.swing.JCheckBox" name="autoclearCheckBox"> + <Properties> + <Property name="focusable" type="boolean" value="false"/> + <Property name="horizontalTextPosition" type="int" value="0"/> + <Property name="verticalTextPosition" type="int" value="3"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="autoclearLabel"> + <Properties> + <Property name="text" type="java.lang.String" value=" Autoclear"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="autoclearLabelMouseClicked"/> + </Events> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/java_gui/src/br/com/bgslibrary/gui/MainFrame.java b/java_gui/src/br/com/bgslibrary/gui/MainFrame.java new file mode 100644 index 0000000000000000000000000000000000000000..8dcdd07dbd5e8fed979428d5ffde8b9b6839ea24 --- /dev/null +++ b/java_gui/src/br/com/bgslibrary/gui/MainFrame.java @@ -0,0 +1,3232 @@ +/* +This file is part of BGSLibrary. + +BGSLibrary is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +BGSLibrary is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with BGSLibrary. If not, see <http://www.gnu.org/licenses/>. +*/ +package br.com.bgslibrary.gui; + +import br.com.bgslibrary.entity.Command; +import br.com.bgslibrary.entity.Configuration; +import java.awt.event.AdjustmentEvent; +import java.awt.event.AdjustmentListener; +import java.io.DataInputStream; +import java.io.File; +import javax.swing.DefaultComboBoxModel; +import javax.swing.JFileChooser; +import javax.swing.JOptionPane; +import org.apache.commons.configuration.PropertiesConfiguration; +import org.apache.commons.io.FileUtils; + +public class MainFrame extends javax.swing.JFrame +{ + private String basePath = "./"; + private String configPath = basePath + "config/"; + private int appTabbedPaneSelectedIndex = 0; + + public MainFrame() + { + initComponents(); + init(); + } + + private void init() + { + this.setLocationRelativeTo(getRootPane()); + appTabbedPane.setSelectedIndex(0); + load(); + + Command.init(); + Command.setBase(basePath); + /* + String architectureOS = System.getProperty("os.arch"); + //System.out.println("architectureOS: " + architectureOS); + + if(architectureOS.equals("amd64")) + win64RadioButtonActionPerformed(null); + else + win32RadioButtonActionPerformed(null); + */ + useCameraRadioButtonActionPerformed(null); + autoscrollLabelMouseClicked(null); + autoclearCheckBox.setSelected(true); + + fileNameLabel.setText(""); + + update(); + reload(); + } + + private void load() + { + try + { + PropertiesConfiguration pc = new PropertiesConfiguration(); + pc.load("bgslibrary_gui.properties"); + + basePath = pc.getString("base.path"); + configPath = basePath + pc.getString("config.path"); + + String paths[] = pc.getStringArray("run.path"); + loadConfigComboBox.setModel(new DefaultComboBoxModel(paths)); + + String methods[] = pc.getStringArray("bgs.methods"); + tictocComboBox.setModel(new DefaultComboBoxModel(methods)); + } + catch(Exception ex) + { + ex.printStackTrace(); + } + } + + private void update() + { + if(loadConfigComboBox.getSelectedIndex() > 0) + cmdTextField.setText(loadConfigComboBox.getSelectedItem().toString()); + else + cmdTextField.setText(Command.getString()); + } + private ExternalProcess ep = null; + private Thread externalProcessThread = null; + private boolean epRunning = false; + + private void execute() + { + if(autoclearCheckBox.isSelected()) + logTextPane.setText(""); + + stop(); + + if(Command.validade()) + try + { + if(epRunning == false) + { + ep = new ExternalProcess(); + externalProcessThread = new Thread(ep); + externalProcessThread.start(); + epRunning = true; + appTabbedPane.setSelectedIndex(3); + } + } + catch(Exception ex) + { + ex.printStackTrace(); + } + else + JOptionPane.showMessageDialog(this, "Check parameters!", "Alert", JOptionPane.ERROR_MESSAGE); + } + + private void stop() + { + if(epRunning == true) + { + ep.stop(); + + try + { + Thread.currentThread().sleep(10); + externalProcessThread.interrupt(); + } + catch(Exception ex) + { + } + + ep = null; + externalProcessThread = null; + epRunning = false; + } + } + + public void addLog(String msg) + { + if(msg.trim().isEmpty()) + return; + + String txt = logTextPane.getText() + msg + "\r\n"; + logTextPane.setText(txt); + } + + class ExternalProcess implements Runnable + { + private boolean stop = false; + + @Override + public void run() + { + Process p = null; + String str = ""; + + try + { + //Process p = Runtime.getRuntime().exec(CommandLine.getString()); + //Runtime.getRuntime().exec("cmd /c start /B " + CommandLine.getString()); + //Runtime.getRuntime().exec("cmd /c start /B ../run_video.bat"); + //Runtime.getRuntime().exec("cmd /C " + loadConfigComboBox.getSelectedItem().toString()); + + if(loadConfigComboBox.getSelectedIndex() > 0) + p = Runtime.getRuntime().exec(loadConfigComboBox.getSelectedItem().toString()); + else + p = Runtime.getRuntime().exec(Command.getString()); + + if(p == null) + return; + + System.out.println("Process created"); + DataInputStream in = new DataInputStream(p.getInputStream()); + + while(true) + { + if(in.available() > 1) + { + str = in.readLine(); + addLog(str); + System.out.println(str); + } + + if(stop == true) + break; + + Thread.currentThread().sleep(10); + } + } + catch(Exception ex) + { + addLog(ex.getMessage()); + ex.printStackTrace(); + } + finally + { + p.destroy(); + p = null; + System.out.println("Process destroyed"); + } + } + + public void stop() + { + stop = true; + } + } + + private void reload() + { + reloadParam("input_resize_percent", resizeFrameTextField, Configuration.VideoCapture); + reloadParam("stopAt", stopVideoAtTextField, Configuration.VideoCapture); + reloadParam("enableFlip", verticalFlipCheckBox, Configuration.VideoCapture); + reloadParam("showOutput", showOutputCheckBox, Configuration.VideoCapture); + reloadParam("use_roi", useROICheckBox, Configuration.VideoCapture); + reloadParam("roi_defined", ROIdefinedCheckBox, Configuration.VideoCapture); + reloadParam("roi_x0", x0ROITextField, Configuration.VideoCapture); + reloadParam("roi_x1", x1ROITextField, Configuration.VideoCapture); + reloadParam("roi_y0", y0ROITextField, Configuration.VideoCapture); + reloadParam("roi_y1", y1ROITextField, Configuration.VideoCapture); + + /////////////////////////////////////////////////////////////////////////// + + reloadParam("enablePreProcessor", preProcessorCheckBox, Configuration.FrameProcessor); + reloadParam("tictoc", tictocComboBox, Configuration.FrameProcessor); + + /////////////////////////////////////////////////////////////////////////// + + reloadParam("enableFrameDifferenceBGS", frameDifferenceCheckBox, Configuration.FrameProcessor); + reloadParam("enableStaticFrameDifferenceBGS", staticFrameDifferenceCheckBox, Configuration.FrameProcessor); + reloadParam("enableWeightedMovingMeanBGS", weightedMovingMeanCheckBox, Configuration.FrameProcessor); + reloadParam("enableWeightedMovingVarianceBGS", weightedMovingVarianceCheckBox, Configuration.FrameProcessor); + reloadParam("enableAdaptiveBackgroundLearning", adaptiveBackgroundLearningCheckBox, Configuration.FrameProcessor); + reloadParam("enableMixtureOfGaussianV1BGS", openCVMoGV1CheckBox, Configuration.FrameProcessor); + reloadParam("enableMixtureOfGaussianV2BGS", openCVMoGV2CheckBox, Configuration.FrameProcessor); + reloadParam("enableGMG", GMGCheckBox, Configuration.FrameProcessor); + + /////////////////////////////////////////////////////////////////////////// + + reloadParam("enableDPMeanBGS", temporalMeanCheckBox, Configuration.FrameProcessor); + reloadParam("enableDPAdaptiveMedianBGS", adaptiveMedianCheckBox, Configuration.FrameProcessor); + reloadParam("enableDPPratiMediodBGS", temporalMedianCheckBox, Configuration.FrameProcessor); + reloadParam("enableDPEigenbackgroundBGS", eigenbackgroundCheckBox, Configuration.FrameProcessor); + reloadParam("enableDPWrenGABGS", gaussianAverageCheckBox, Configuration.FrameProcessor); + reloadParam("enableDPGrimsonGMMBGS", grimsonGMMCheckBox, Configuration.FrameProcessor); + reloadParam("enableDPZivkovicAGMMBGS", zivkovicGMMCheckBox, Configuration.FrameProcessor); + + /////////////////////////////////////////////////////////////////////////// + + reloadParam("enableLBSimpleGaussian", simpleGaussianCheckBox, Configuration.FrameProcessor); + reloadParam("enableLBFuzzyGaussian", fuzzyGaussianCheckBox, Configuration.FrameProcessor); + reloadParam("enableLBMixtureOfGaussians", mixtureOfGaussiansCheckBox, Configuration.FrameProcessor); + reloadParam("enableLBAdaptiveSOM", adaptiveSOMCheckBox, Configuration.FrameProcessor); + reloadParam("enableLBFuzzyAdaptiveSOM", fuzzyAdaptiveSOMCheckBox, Configuration.FrameProcessor); + reloadParam("enableT2FGMM_UM", T2FGMMUMCheckBox, Configuration.FrameProcessor); + reloadParam("enableT2FGMM_UV", T2FGMMUVCheckBox, Configuration.FrameProcessor); + reloadParam("enableT2FMRF_UM", T2FMRFUMCheckBox, Configuration.FrameProcessor); + reloadParam("enableT2FMRF_UV", T2FMRFUVCheckBox, Configuration.FrameProcessor); + reloadParam("enableFuzzySugenoIntegral", fuzzySugenoIntegralCheckBox, Configuration.FrameProcessor); + reloadParam("enableFuzzyChoquetIntegral", fuzzyChoquetIntegralCheckBox, Configuration.FrameProcessor); + reloadParam("enableMultiLayerBGS", multiLayerBGSCheckBox, Configuration.FrameProcessor); + //reloadParam("enablePBAS", PBASCheckBox, Configuration.FrameProcessor); + reloadParam("enableVuMeter", VuMeterCheckBox, Configuration.FrameProcessor); + + /////////////////////////////////////////////////////////////////////////// + + reloadParam("enableForegroundMaskAnalysis", foregroundMaskAnalysisCheckBox, Configuration.FrameProcessor); + } + + private void reloadParam(String pname, javax.swing.JTextField textField, String filePath) + { + String p = getParam(pname, filePath); + textField.setText(p); + } + + private void reloadParam(String pname, javax.swing.JCheckBox checkBox, String filePath) + { + String p = getParam(pname, filePath); + if(Integer.parseInt(p) == 1) + checkBox.setSelected(true); + else + checkBox.setSelected(false); + } + + private void reloadParam(String pname, javax.swing.JComboBox comboBox, String filePath) + { + String p = getParam(pname, filePath); + if(p.length() > 2) + comboBox.setSelectedItem(p); + } + + private String getParam(String paramName, String filePath) + { + //System.out.println("changing " + filePath + ", param name:"+paramName+", value:"+paramValue); + String content = getFileContent(filePath); + int i1 = content.indexOf("<" + paramName + ">") + ("<" + paramName + ">").length(); + int i2 = content.indexOf("</" + paramName + ">"); + //System.out.println("i1:"+i1+",i2:"+i2); + String cvalue = content.substring(i1, i2); + //System.out.println("cvalue:"+cvalue); + return cvalue; + } + + private void changeParam(String pname, javax.swing.JCheckBox checkBox, String filePath) + { + String nvalue = (checkBox.isSelected() ? 1 : 0) + ""; + changeParam(pname, nvalue, filePath); + } + + private void changeParam(String pname, javax.swing.JComboBox comboBox, String filePath) + { + if(comboBox.getSelectedIndex() > 0) + { + String value = comboBox.getSelectedItem().toString(); + changeParam(pname, value, filePath); + } + else + changeParam(pname, "\"\"", filePath); + } + + private void changeParam(String pname, String nvalue, String filePath) + { + String startParam = "<" + pname + ">"; + String endParam = "</" + pname + ">"; + + System.out.println("changing " + filePath + ", param name:" + pname + ", value:" + nvalue); + + String content = getFileContent(filePath); + if(content.isEmpty()) + return; + + int i1 = content.indexOf(startParam) + (startParam).length(); + int i2 = content.indexOf(endParam); + String cvalue = content.substring(i1, i2); + + //System.out.println("i1:"+i1+",i2:"+i2); + //System.out.println("cvalue:"+cvalue); + + String cparam = startParam + cvalue + endParam; + String nparam = startParam + nvalue + endParam; + + String ncontent = content.replace(cparam, nparam); + //System.out.println("ncontent:"+ncontent); + + try + { + File file = new File(configPath + filePath); + FileUtils.write(file, ncontent); + } + catch(Exception ex) + { + ex.printStackTrace(); + } + } + + private String getFilePath(boolean onlyDir) + { + final JFileChooser fc = new JFileChooser(basePath); + + if(onlyDir) + fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + + int returnVal = fc.showOpenDialog(this); + + String relative = ""; + + if(returnVal == JFileChooser.APPROVE_OPTION) + { + File file = fc.getSelectedFile(); + + String path = file.getAbsolutePath(); + String base = basePath; + relative = new File(base).toURI().relativize(new File(path).toURI()).getPath(); + + System.out.println("Opening: " + relative); + } + else + System.out.println("Open command cancelled by user"); + + return relative; + } + + private String getFileContent(String filePath) + { + if(isConfigFile(filePath)) + filePath = configPath + filePath; + + File file = new File(filePath); + + try + { + return FileUtils.readFileToString(file); + } + catch(java.io.FileNotFoundException ex) + { + JOptionPane.showMessageDialog(this, "Configuration file not found.\nFirst enable module and click to run!", "Error", JOptionPane.ERROR_MESSAGE); + } + catch(Exception ex) + { + ex.printStackTrace(); + } + + return ""; + } + + private void openFileContent(String filePath) + { + fileNameLabel.setText(""); + + String content = getFileContent(filePath); + + if(!content.isEmpty()) + { + fileContentTextPane.setText(content); + appTabbedPane.setSelectedIndex(2); + fileNameLabel.setText(filePath); + } + } + + private void save() + { + String filePath = fileNameLabel.getText(); + String fileContent = fileContentTextPane.getText(); + + if(!filePath.isEmpty()) + { + if(isConfigFile(filePath)) + filePath = configPath + filePath; + + File file = new File(filePath); + + try + { + FileUtils.writeStringToFile(file, fileContent); + //returnButtonActionPerformed(null); + } + catch(Exception ex) + { + ex.printStackTrace(); + } + } + } + + private void retur(boolean clear) + { + int index = appTabbedPaneSelectedIndex; + + if(clear) + { + fileNameLabel.setText(""); + fileContentTextPane.setText(""); + index = 1; + } + + appTabbedPane.setSelectedIndex(index); + } + + private boolean isConfigFile(String filename) + { + if(filename.endsWith(".xml")) + return true; + else + return false; + } + + AdjustmentListener adjustmentListener = null; + + private void autoscroll() + { + if(autoscrollCheckBox.isSelected()) + { + adjustmentListener = new AdjustmentListener() + { + @Override + public void adjustmentValueChanged(AdjustmentEvent e) + { + e.getAdjustable().setValue(e.getAdjustable().getMaximum()); + } + }; + + logTextScrollPane.getVerticalScrollBar().addAdjustmentListener(adjustmentListener); + } + else + logTextScrollPane.getVerticalScrollBar().removeAdjustmentListener(adjustmentListener); + } + + private void enableAllBGS() + { + changeParam("enableFrameDifferenceBGS", "1", Configuration.FrameProcessor); + changeParam("enableStaticFrameDifferenceBGS", "1", Configuration.FrameProcessor); + changeParam("enableWeightedMovingMeanBGS", "1", Configuration.FrameProcessor); + changeParam("enableWeightedMovingVarianceBGS", "1", Configuration.FrameProcessor); + changeParam("enableAdaptiveBackgroundLearning", "1", Configuration.FrameProcessor); + changeParam("enableMixtureOfGaussianV1BGS", "1", Configuration.FrameProcessor); + changeParam("enableMixtureOfGaussianV2BGS", "1", Configuration.FrameProcessor); + changeParam("enableGMG", "1", Configuration.FrameProcessor); + changeParam("enableDPMeanBGS", "1", Configuration.FrameProcessor); + changeParam("enableDPAdaptiveMedianBGS", "1", Configuration.FrameProcessor); + changeParam("enableDPPratiMediodBGS", "1", Configuration.FrameProcessor); + changeParam("enableDPEigenbackgroundBGS", "1", Configuration.FrameProcessor); + changeParam("enableDPWrenGABGS", "1", Configuration.FrameProcessor); + changeParam("enableDPGrimsonGMMBGS", "1", Configuration.FrameProcessor); + changeParam("enableDPZivkovicAGMMBGS", "1", Configuration.FrameProcessor); + changeParam("enableLBSimpleGaussian", "1", Configuration.FrameProcessor); + changeParam("enableLBFuzzyGaussian", "1", Configuration.FrameProcessor); + changeParam("enableLBMixtureOfGaussians", "1", Configuration.FrameProcessor); + changeParam("enableLBAdaptiveSOM", "1", Configuration.FrameProcessor); + changeParam("enableLBFuzzyAdaptiveSOM", "1", Configuration.FrameProcessor); + changeParam("enableT2FGMM_UM", "1", Configuration.FrameProcessor); + changeParam("enableT2FGMM_UV", "1", Configuration.FrameProcessor); + changeParam("enableT2FMRF_UM", "1", Configuration.FrameProcessor); + changeParam("enableT2FMRF_UV", "1", Configuration.FrameProcessor); + changeParam("enableFuzzySugenoIntegral", "1", Configuration.FrameProcessor); + changeParam("enableFuzzyChoquetIntegral", "1", Configuration.FrameProcessor); + changeParam("enableMultiLayerBGS", "1", Configuration.FrameProcessor); + //changeParam("enablePBAS", "1", Configuration.FrameProcessor); + changeParam("enableVuMeter", "1", Configuration.FrameProcessor); + + frameDifferenceCheckBox.setSelected(true); + staticFrameDifferenceCheckBox.setSelected(true); + weightedMovingMeanCheckBox.setSelected(true); + weightedMovingVarianceCheckBox.setSelected(true); + adaptiveBackgroundLearningCheckBox.setSelected(true); + openCVMoGV1CheckBox.setSelected(true); + openCVMoGV2CheckBox.setSelected(true); + GMGCheckBox.setSelected(true); + temporalMeanCheckBox.setSelected(true); + adaptiveMedianCheckBox.setSelected(true); + temporalMedianCheckBox.setSelected(true); + eigenbackgroundCheckBox.setSelected(true); + gaussianAverageCheckBox.setSelected(true); + grimsonGMMCheckBox.setSelected(true); + zivkovicGMMCheckBox.setSelected(true); + simpleGaussianCheckBox.setSelected(true); + fuzzyGaussianCheckBox.setSelected(true); + mixtureOfGaussiansCheckBox.setSelected(true); + adaptiveSOMCheckBox.setSelected(true); + fuzzyAdaptiveSOMCheckBox.setSelected(true); + T2FGMMUMCheckBox.setSelected(true); + T2FGMMUVCheckBox.setSelected(true); + T2FMRFUMCheckBox.setSelected(true); + T2FMRFUVCheckBox.setSelected(true); + fuzzySugenoIntegralCheckBox.setSelected(true); + fuzzyChoquetIntegralCheckBox.setSelected(true); + multiLayerBGSCheckBox.setSelected(true); + //PBASCheckBox.setSelected(true); + VuMeterCheckBox.setSelected(true); + + reload(); + } + + private void disableAllBGS() + { + changeParam("enableFrameDifferenceBGS", "0", Configuration.FrameProcessor); + changeParam("enableStaticFrameDifferenceBGS", "0", Configuration.FrameProcessor); + changeParam("enableWeightedMovingMeanBGS", "0", Configuration.FrameProcessor); + changeParam("enableWeightedMovingVarianceBGS", "0", Configuration.FrameProcessor); + changeParam("enableAdaptiveBackgroundLearning", "0", Configuration.FrameProcessor); + changeParam("enableMixtureOfGaussianV1BGS", "0", Configuration.FrameProcessor); + changeParam("enableMixtureOfGaussianV2BGS", "0", Configuration.FrameProcessor); + changeParam("enableGMG", "0", Configuration.FrameProcessor); + changeParam("enableDPMeanBGS", "0", Configuration.FrameProcessor); + changeParam("enableDPAdaptiveMedianBGS", "0", Configuration.FrameProcessor); + changeParam("enableDPPratiMediodBGS", "0", Configuration.FrameProcessor); + changeParam("enableDPEigenbackgroundBGS", "0", Configuration.FrameProcessor); + changeParam("enableDPWrenGABGS", "0", Configuration.FrameProcessor); + changeParam("enableDPGrimsonGMMBGS", "0", Configuration.FrameProcessor); + changeParam("enableDPZivkovicAGMMBGS", "0", Configuration.FrameProcessor); + changeParam("enableLBSimpleGaussian", "0", Configuration.FrameProcessor); + changeParam("enableLBFuzzyGaussian", "0", Configuration.FrameProcessor); + changeParam("enableLBMixtureOfGaussians", "0", Configuration.FrameProcessor); + changeParam("enableLBAdaptiveSOM", "0", Configuration.FrameProcessor); + changeParam("enableLBFuzzyAdaptiveSOM", "0", Configuration.FrameProcessor); + changeParam("enableT2FGMM_UM", "0", Configuration.FrameProcessor); + changeParam("enableT2FGMM_UV", "0", Configuration.FrameProcessor); + changeParam("enableT2FMRF_UM", "0", Configuration.FrameProcessor); + changeParam("enableT2FMRF_UV", "0", Configuration.FrameProcessor); + changeParam("enableFuzzySugenoIntegral", "0", Configuration.FrameProcessor); + changeParam("enableFuzzyChoquetIntegral", "0", Configuration.FrameProcessor); + changeParam("enableMultiLayerBGS", "0", Configuration.FrameProcessor); + //changeParam("enablePBAS", "0", Configuration.FrameProcessor); + changeParam("enableVuMeter", "0", Configuration.FrameProcessor); + + frameDifferenceCheckBox.setSelected(false); + staticFrameDifferenceCheckBox.setSelected(false); + weightedMovingMeanCheckBox.setSelected(false); + weightedMovingVarianceCheckBox.setSelected(false); + adaptiveBackgroundLearningCheckBox.setSelected(false); + GMGCheckBox.setSelected(false); + openCVMoGV1CheckBox.setSelected(false); + openCVMoGV2CheckBox.setSelected(false); + temporalMeanCheckBox.setSelected(false); + adaptiveMedianCheckBox.setSelected(false); + temporalMedianCheckBox.setSelected(false); + eigenbackgroundCheckBox.setSelected(false); + gaussianAverageCheckBox.setSelected(false); + grimsonGMMCheckBox.setSelected(false); + zivkovicGMMCheckBox.setSelected(false); + simpleGaussianCheckBox.setSelected(false); + fuzzyGaussianCheckBox.setSelected(false); + mixtureOfGaussiansCheckBox.setSelected(false); + adaptiveSOMCheckBox.setSelected(false); + fuzzyAdaptiveSOMCheckBox.setSelected(false); + T2FGMMUMCheckBox.setSelected(false); + T2FGMMUVCheckBox.setSelected(false); + T2FMRFUMCheckBox.setSelected(false); + T2FMRFUVCheckBox.setSelected(false); + fuzzySugenoIntegralCheckBox.setSelected(false); + fuzzyChoquetIntegralCheckBox.setSelected(false); + multiLayerBGSCheckBox.setSelected(false); + //PBASCheckBox.setSelected(false); + VuMeterCheckBox.setSelected(false); + + reload(); + } + + /** + * This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The + * content of this method is always regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() + { + + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenu2 = new javax.swing.JMenu(); + appTabbedPane = new javax.swing.JTabbedPane(); + jPanel1 = new javax.swing.JPanel(); + jPanel3 = new javax.swing.JPanel(); + useCameraRadioButton = new javax.swing.JRadioButton(); + useVideoRadioButton = new javax.swing.JRadioButton(); + useDatasetRadioButton = new javax.swing.JRadioButton(); + cameraIndexTextField = new javax.swing.JTextField(); + setInputFileButton = new javax.swing.JButton(); + setDatasetFolderButton = new javax.swing.JButton(); + setTrainFileButton = new javax.swing.JButton(); + setTestFileButton = new javax.swing.JButton(); + jLabel2 = new javax.swing.JLabel(); + jPanel4 = new javax.swing.JPanel(); + cmdTextField = new javax.swing.JTextField(); + jPanel6 = new javax.swing.JPanel(); + useForegroundMaskAnalysisCheckBox = new javax.swing.JCheckBox(); + setImageRefButton = new javax.swing.JButton(); + jLabel1 = new javax.swing.JLabel(); + compareAtTextField = new javax.swing.JTextField(); + jPanel7 = new javax.swing.JPanel(); + jLabel3 = new javax.swing.JLabel(); + loadConfigComboBox = new javax.swing.JComboBox(); + editButton = new javax.swing.JButton(); + runButton = new javax.swing.JButton(); + jPanel2 = new javax.swing.JPanel(); + jPanel9 = new javax.swing.JPanel(); + jLabel4 = new javax.swing.JLabel(); + resizeFrameTextField = new javax.swing.JTextField(); + jLabel5 = new javax.swing.JLabel(); + verticalFlipCheckBox = new javax.swing.JCheckBox(); + jLabel6 = new javax.swing.JLabel(); + stopVideoAtTextField = new javax.swing.JTextField(); + showOutputCheckBox = new javax.swing.JCheckBox(); + reloadButton = new javax.swing.JButton(); + jPanel10 = new javax.swing.JPanel(); + useROICheckBox = new javax.swing.JCheckBox(); + ROIdefinedCheckBox = new javax.swing.JCheckBox(); + jLabel7 = new javax.swing.JLabel(); + x0ROITextField = new javax.swing.JTextField(); + jLabel8 = new javax.swing.JLabel(); + y0ROITextField = new javax.swing.JTextField(); + jLabel9 = new javax.swing.JLabel(); + x1ROITextField = new javax.swing.JTextField(); + jLabel10 = new javax.swing.JLabel(); + y1ROITextField = new javax.swing.JTextField(); + jPanel11 = new javax.swing.JPanel(); + jLabel11 = new javax.swing.JLabel(); + jPanel12 = new javax.swing.JPanel(); + preProcessorCheckBox = new javax.swing.JCheckBox(); + tictocComboBox = new javax.swing.JComboBox(); + preProcessorLabel = new javax.swing.JLabel(); + jLabel34 = new javax.swing.JLabel(); + foregroundMaskAnalysisLabel = new javax.swing.JLabel(); + foregroundMaskAnalysisCheckBox = new javax.swing.JCheckBox(); + jPanel13 = new javax.swing.JPanel(); + frameDifferenceCheckBox = new javax.swing.JCheckBox(); + staticFrameDifferenceCheckBox = new javax.swing.JCheckBox(); + weightedMovingMeanCheckBox = new javax.swing.JCheckBox(); + weightedMovingVarianceCheckBox = new javax.swing.JCheckBox(); + openCVMoGV1CheckBox = new javax.swing.JCheckBox(); + openCVMoGV2CheckBox = new javax.swing.JCheckBox(); + adaptiveBackgroundLearningCheckBox = new javax.swing.JCheckBox(); + gaussianAverageCheckBox = new javax.swing.JCheckBox(); + eigenbackgroundCheckBox = new javax.swing.JCheckBox(); + temporalMedianCheckBox = new javax.swing.JCheckBox(); + adaptiveMedianCheckBox = new javax.swing.JCheckBox(); + temporalMeanCheckBox = new javax.swing.JCheckBox(); + grimsonGMMCheckBox = new javax.swing.JCheckBox(); + zivkovicGMMCheckBox = new javax.swing.JCheckBox(); + adaptiveSOMCheckBox = new javax.swing.JCheckBox(); + mixtureOfGaussiansCheckBox = new javax.swing.JCheckBox(); + fuzzyGaussianCheckBox = new javax.swing.JCheckBox(); + simpleGaussianCheckBox = new javax.swing.JCheckBox(); + fuzzyAdaptiveSOMCheckBox = new javax.swing.JCheckBox(); + T2FGMMUMCheckBox = new javax.swing.JCheckBox(); + T2FGMMUVCheckBox = new javax.swing.JCheckBox(); + frameDifferenceLabel = new javax.swing.JLabel(); + staticFrameDifferenceLabel = new javax.swing.JLabel(); + weightedMovingMeanLabel = new javax.swing.JLabel(); + weightedMovingVarianceLabel = new javax.swing.JLabel(); + adaptiveBackgroundLearningLabel = new javax.swing.JLabel(); + openCVMoGV1Label = new javax.swing.JLabel(); + openCVMoGV2Label = new javax.swing.JLabel(); + zivkovicGMMLabel = new javax.swing.JLabel(); + grimsonGMMLabel = new javax.swing.JLabel(); + gaussianAverageLabel = new javax.swing.JLabel(); + eigenbackgroundLabel = new javax.swing.JLabel(); + temporalMedianLabel = new javax.swing.JLabel(); + adaptiveMedianLabel = new javax.swing.JLabel(); + temporalMeanLabel = new javax.swing.JLabel(); + simpleGaussianLabel = new javax.swing.JLabel(); + fuzzyGaussianLabel = new javax.swing.JLabel(); + mixtureOfGaussiansLabel = new javax.swing.JLabel(); + adaptiveSOMLabel = new javax.swing.JLabel(); + fuzzyAdaptiveSOMLabel = new javax.swing.JLabel(); + T2FGMMUMLabel = new javax.swing.JLabel(); + T2FGMMUVLabel = new javax.swing.JLabel(); + multiLayerBGSLabel = new javax.swing.JLabel(); + multiLayerBGSCheckBox = new javax.swing.JCheckBox(); + checkAllButton = new javax.swing.JButton(); + uncheckAllButton = new javax.swing.JButton(); + openConfigButton = new javax.swing.JButton(); + fuzzySugenoIntegralLabel = new javax.swing.JLabel(); + fuzzySugenoIntegralCheckBox = new javax.swing.JCheckBox(); + fuzzyChoquetIntegralLabel = new javax.swing.JLabel(); + fuzzyChoquetIntegralCheckBox = new javax.swing.JCheckBox(); + T2FMRFUMLabel = new javax.swing.JLabel(); + T2FMRFUMCheckBox = new javax.swing.JCheckBox(); + T2FMRFUVLabel = new javax.swing.JLabel(); + T2FMRFUVCheckBox = new javax.swing.JCheckBox(); + GMGCheckBox = new javax.swing.JCheckBox(); + GMGLabel = new javax.swing.JLabel(); + VuMeterLabel = new javax.swing.JLabel(); + VuMeterCheckBox = new javax.swing.JCheckBox(); + runButton2 = new javax.swing.JButton(); + jPanel16 = new javax.swing.JPanel(); + jToolBar1 = new javax.swing.JToolBar(); + saveButton = new javax.swing.JButton(); + jSeparator1 = new javax.swing.JToolBar.Separator(); + returnButton = new javax.swing.JButton(); + jSeparator3 = new javax.swing.JToolBar.Separator(); + runButton3 = new javax.swing.JButton(); + jPanel17 = new javax.swing.JPanel(); + jScrollPane1 = new javax.swing.JScrollPane(); + fileContentTextPane = new javax.swing.JTextPane(); + jLabel12 = new javax.swing.JLabel(); + fileNameLabel = new javax.swing.JLabel(); + jPanel18 = new javax.swing.JPanel(); + logTextScrollPane = new javax.swing.JScrollPane(); + logTextPane = new javax.swing.JTextPane(); + jToolBar2 = new javax.swing.JToolBar(); + clearButton = new javax.swing.JButton(); + jSeparator4 = new javax.swing.JToolBar.Separator(); + runButton4 = new javax.swing.JButton(); + jSeparator2 = new javax.swing.JToolBar.Separator(); + returnButton2 = new javax.swing.JButton(); + jSeparator5 = new javax.swing.JToolBar.Separator(); + autoscrollCheckBox = new javax.swing.JCheckBox(); + autoscrollLabel = new javax.swing.JLabel(); + jSeparator6 = new javax.swing.JToolBar.Separator(); + autoclearCheckBox = new javax.swing.JCheckBox(); + autoclearLabel = new javax.swing.JLabel(); + jMenuBar2 = new javax.swing.JMenuBar(); + jMenu3 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenu4 = new javax.swing.JMenu(); + jMenuItem2 = new javax.swing.JMenuItem(); + + jMenu1.setText("File"); + jMenuBar1.add(jMenu1); + + jMenu2.setText("Edit"); + jMenuBar1.add(jMenu2); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + setTitle("BGSLibrary GUI"); + setBackground(new java.awt.Color(255, 255, 255)); + + appTabbedPane.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + + jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Input")); + + useCameraRadioButton.setText("Use camera"); + useCameraRadioButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + useCameraRadioButtonActionPerformed(evt); + } + }); + + useVideoRadioButton.setText("Use video file"); + useVideoRadioButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + useVideoRadioButtonActionPerformed(evt); + } + }); + + useDatasetRadioButton.setText("Use dataset"); + useDatasetRadioButton.setEnabled(false); + useDatasetRadioButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + useDatasetRadioButtonActionPerformed(evt); + } + }); + + cameraIndexTextField.setHorizontalAlignment(javax.swing.JTextField.CENTER); + cameraIndexTextField.setText("0"); + + setInputFileButton.setText("Set input file"); + setInputFileButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + setInputFileButtonActionPerformed(evt); + } + }); + + setDatasetFolderButton.setText("Set dataset folder"); + setDatasetFolderButton.setEnabled(false); + setDatasetFolderButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + setDatasetFolderButtonActionPerformed(evt); + } + }); + + setTrainFileButton.setText("Set train file"); + setTrainFileButton.setEnabled(false); + setTrainFileButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + setTrainFileButtonActionPerformed(evt); + } + }); + + setTestFileButton.setText("Set test file"); + setTestFileButton.setEnabled(false); + setTestFileButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + setTestFileButtonActionPerformed(evt); + } + }); + + jLabel2.setText("Camera index:"); + + javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); + jPanel3.setLayout(jPanel3Layout); + jPanel3Layout.setHorizontalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(useCameraRadioButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(useVideoRadioButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addComponent(jLabel2) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(cameraIndexTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(setInputFileButton, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addGroup(jPanel3Layout.createSequentialGroup() + .addComponent(useDatasetRadioButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(setDatasetFolderButton, javax.swing.GroupLayout.PREFERRED_SIZE, 140, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(setTrainFileButton, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(setTestFileButton, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + jPanel3Layout.setVerticalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(useCameraRadioButton) + .addComponent(cameraIndexTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel2)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(useVideoRadioButton) + .addComponent(setInputFileButton)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(useDatasetRadioButton) + .addComponent(setDatasetFolderButton) + .addComponent(setTrainFileButton) + .addComponent(setTestFileButton)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder("Command Line")); + + javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); + jPanel4.setLayout(jPanel4Layout); + jPanel4Layout.setHorizontalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addContainerGap() + .addComponent(cmdTextField) + .addContainerGap()) + ); + jPanel4Layout.setVerticalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addContainerGap() + .addComponent(cmdTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder("Options")); + + useForegroundMaskAnalysisCheckBox.setText("Use Foreground Mask Analysis"); + useForegroundMaskAnalysisCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + useForegroundMaskAnalysisCheckBoxActionPerformed(evt); + } + }); + + setImageRefButton.setText("Set Image Ref"); + setImageRefButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + setImageRefButtonActionPerformed(evt); + } + }); + + jLabel1.setText("Compare at frame:"); + + compareAtTextField.setHorizontalAlignment(javax.swing.JTextField.CENTER); + compareAtTextField.setText("0"); + compareAtTextField.addFocusListener(new java.awt.event.FocusAdapter() + { + public void focusLost(java.awt.event.FocusEvent evt) + { + compareAtTextFieldFocusLost(evt); + } + }); + + javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6); + jPanel6.setLayout(jPanel6Layout); + jPanel6Layout.setHorizontalGroup( + jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel6Layout.createSequentialGroup() + .addContainerGap() + .addComponent(useForegroundMaskAnalysisCheckBox) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(setImageRefButton) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel1) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(compareAtTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + jPanel6Layout.setVerticalGroup( + jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel6Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(useForegroundMaskAnalysisCheckBox) + .addComponent(setImageRefButton) + .addComponent(jLabel1) + .addComponent(compareAtTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jPanel7.setBorder(javax.swing.BorderFactory.createTitledBorder("Saves")); + + jLabel3.setText("Load:"); + + loadConfigComboBox.addItemListener(new java.awt.event.ItemListener() + { + public void itemStateChanged(java.awt.event.ItemEvent evt) + { + loadConfigComboBoxItemStateChanged(evt); + } + }); + + editButton.setText("Edit"); + editButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + editButtonActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7); + jPanel7.setLayout(jPanel7Layout); + jPanel7Layout.setHorizontalGroup( + jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel7Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel3) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(loadConfigComboBox, 0, 205, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(editButton, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + jPanel7Layout.setVerticalGroup( + jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel7Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel3) + .addComponent(loadConfigComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(editButton)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + runButton.setText("Run"); + runButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + runButtonActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addComponent(jPanel7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 148, Short.MAX_VALUE) + .addComponent(runButton, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addComponent(jPanel7, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jPanel6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(runButton)) + .addContainerGap(245, Short.MAX_VALUE)) + ); + + appTabbedPane.addTab("Main", jPanel1); + + jPanel9.setBorder(javax.swing.BorderFactory.createTitledBorder("Video Capture Module")); + + jLabel4.setText("Resize frame:"); + + resizeFrameTextField.setText("100"); + resizeFrameTextField.addFocusListener(new java.awt.event.FocusAdapter() + { + public void focusLost(java.awt.event.FocusEvent evt) + { + resizeFrameTextFieldFocusLost(evt); + } + }); + + jLabel5.setText("%"); + + verticalFlipCheckBox.setText("Vertical Flip"); + verticalFlipCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + verticalFlipCheckBoxActionPerformed(evt); + } + }); + + jLabel6.setText("Stop video at frame:"); + + stopVideoAtTextField.setHorizontalAlignment(javax.swing.JTextField.CENTER); + stopVideoAtTextField.setText("0"); + stopVideoAtTextField.addFocusListener(new java.awt.event.FocusAdapter() + { + public void focusLost(java.awt.event.FocusEvent evt) + { + stopVideoAtTextFieldFocusLost(evt); + } + }); + + showOutputCheckBox.setText("Show output"); + showOutputCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + showOutputCheckBoxActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel9Layout = new javax.swing.GroupLayout(jPanel9); + jPanel9.setLayout(jPanel9Layout); + jPanel9Layout.setHorizontalGroup( + jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel9Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel9Layout.createSequentialGroup() + .addComponent(jLabel4) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(resizeFrameTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel5)) + .addGroup(jPanel9Layout.createSequentialGroup() + .addComponent(jLabel6) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(stopVideoAtTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(jPanel9Layout.createSequentialGroup() + .addComponent(verticalFlipCheckBox) + .addGap(18, 18, 18) + .addComponent(showOutputCheckBox))) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + jPanel9Layout.setVerticalGroup( + jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel9Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel4) + .addComponent(resizeFrameTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel5)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel6) + .addComponent(stopVideoAtTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(verticalFlipCheckBox) + .addComponent(showOutputCheckBox)) + .addContainerGap(14, Short.MAX_VALUE)) + ); + + reloadButton.setText("Reload"); + reloadButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + reloadButtonActionPerformed(evt); + } + }); + + jPanel10.setBorder(javax.swing.BorderFactory.createTitledBorder("Region of Interest (ROI)")); + + useROICheckBox.setText("Use ROI"); + useROICheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + useROICheckBoxActionPerformed(evt); + } + }); + + ROIdefinedCheckBox.setText("ROI defined"); + ROIdefinedCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + ROIdefinedCheckBoxActionPerformed(evt); + } + }); + + jLabel7.setText("X0:"); + + x0ROITextField.setHorizontalAlignment(javax.swing.JTextField.CENTER); + x0ROITextField.setText("0"); + x0ROITextField.addFocusListener(new java.awt.event.FocusAdapter() + { + public void focusLost(java.awt.event.FocusEvent evt) + { + x0ROITextFieldFocusLost(evt); + } + }); + + jLabel8.setText("Y0:"); + + y0ROITextField.setHorizontalAlignment(javax.swing.JTextField.CENTER); + y0ROITextField.setText("0"); + y0ROITextField.addFocusListener(new java.awt.event.FocusAdapter() + { + public void focusLost(java.awt.event.FocusEvent evt) + { + y0ROITextFieldFocusLost(evt); + } + }); + + jLabel9.setText("X1:"); + + x1ROITextField.setHorizontalAlignment(javax.swing.JTextField.CENTER); + x1ROITextField.setText("0"); + x1ROITextField.addFocusListener(new java.awt.event.FocusAdapter() + { + public void focusLost(java.awt.event.FocusEvent evt) + { + x1ROITextFieldFocusLost(evt); + } + }); + + jLabel10.setText("Y1:"); + + y1ROITextField.setHorizontalAlignment(javax.swing.JTextField.CENTER); + y1ROITextField.setText("0"); + y1ROITextField.addFocusListener(new java.awt.event.FocusAdapter() + { + public void focusLost(java.awt.event.FocusEvent evt) + { + y1ROITextFieldFocusLost(evt); + } + }); + + javax.swing.GroupLayout jPanel10Layout = new javax.swing.GroupLayout(jPanel10); + jPanel10.setLayout(jPanel10Layout); + jPanel10Layout.setHorizontalGroup( + jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel10Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel10Layout.createSequentialGroup() + .addComponent(useROICheckBox) + .addGap(18, 18, 18) + .addComponent(ROIdefinedCheckBox)) + .addGroup(jPanel10Layout.createSequentialGroup() + .addComponent(jLabel7) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(x0ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addComponent(jLabel9) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(x1ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(jPanel10Layout.createSequentialGroup() + .addComponent(jLabel8) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(y0ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addComponent(jLabel10) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(y1ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + jPanel10Layout.setVerticalGroup( + jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel10Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(useROICheckBox) + .addComponent(ROIdefinedCheckBox)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel7) + .addComponent(x0ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel9) + .addComponent(x1ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel8) + .addComponent(y0ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel10) + .addComponent(y1ROITextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jPanel11.setBorder(javax.swing.BorderFactory.createTitledBorder("Frame Processor Module")); + + jLabel11.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N + jLabel11.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); + jLabel11.setText("Modules"); + + jPanel12.setBorder(javax.swing.BorderFactory.createTitledBorder("Processors")); + + preProcessorCheckBox.setText("PreProcessor"); + preProcessorCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + preProcessorCheckBoxActionPerformed(evt); + } + }); + + tictocComboBox.addItemListener(new java.awt.event.ItemListener() + { + public void itemStateChanged(java.awt.event.ItemEvent evt) + { + tictocComboBoxItemStateChanged(evt); + } + }); + + preProcessorLabel.setForeground(new java.awt.Color(0, 0, 255)); + preProcessorLabel.setText("C"); + preProcessorLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + preProcessorLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + preProcessorLabelMouseClicked(evt); + } + }); + + jLabel34.setText("Performance"); + + foregroundMaskAnalysisLabel.setForeground(new java.awt.Color(0, 0, 255)); + foregroundMaskAnalysisLabel.setText("C"); + foregroundMaskAnalysisLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + foregroundMaskAnalysisLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + foregroundMaskAnalysisLabelMouseClicked(evt); + } + }); + + foregroundMaskAnalysisCheckBox.setText("Foreground Mask Analysis"); + foregroundMaskAnalysisCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + foregroundMaskAnalysisCheckBoxActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel12Layout = new javax.swing.GroupLayout(jPanel12); + jPanel12.setLayout(jPanel12Layout); + jPanel12Layout.setHorizontalGroup( + jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel12Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel12Layout.createSequentialGroup() + .addComponent(preProcessorLabel) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel12Layout.createSequentialGroup() + .addGap(21, 21, 21) + .addComponent(jLabel34, javax.swing.GroupLayout.PREFERRED_SIZE, 72, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(22, 22, 22) + .addComponent(tictocComboBox, 0, 143, Short.MAX_VALUE)) + .addComponent(preProcessorCheckBox))) + .addGroup(jPanel12Layout.createSequentialGroup() + .addComponent(foregroundMaskAnalysisLabel) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(foregroundMaskAnalysisCheckBox) + .addGap(0, 0, Short.MAX_VALUE))) + .addContainerGap()) + ); + jPanel12Layout.setVerticalGroup( + jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel12Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(preProcessorCheckBox) + .addComponent(preProcessorLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(foregroundMaskAnalysisCheckBox) + .addComponent(foregroundMaskAnalysisLabel)) + .addGap(1, 1, 1) + .addGroup(jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(tictocComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel34)) + .addContainerGap(14, Short.MAX_VALUE)) + ); + + jPanel13.setBorder(javax.swing.BorderFactory.createTitledBorder("Background Subtraction Methods")); + + frameDifferenceCheckBox.setText("Frame Difference"); + frameDifferenceCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + frameDifferenceCheckBoxActionPerformed(evt); + } + }); + + staticFrameDifferenceCheckBox.setText("Static Frame Difference"); + staticFrameDifferenceCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + staticFrameDifferenceCheckBoxActionPerformed(evt); + } + }); + + weightedMovingMeanCheckBox.setText("Weighted Moving Mean"); + weightedMovingMeanCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + weightedMovingMeanCheckBoxActionPerformed(evt); + } + }); + + weightedMovingVarianceCheckBox.setText("Weighted Moving Variance"); + weightedMovingVarianceCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + weightedMovingVarianceCheckBoxActionPerformed(evt); + } + }); + + openCVMoGV1CheckBox.setText("OpenCV MoG V1"); + openCVMoGV1CheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + openCVMoGV1CheckBoxActionPerformed(evt); + } + }); + + openCVMoGV2CheckBox.setText("OpenCV MoG V2"); + openCVMoGV2CheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + openCVMoGV2CheckBoxActionPerformed(evt); + } + }); + + adaptiveBackgroundLearningCheckBox.setText("Adaptive Background Learning"); + adaptiveBackgroundLearningCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + adaptiveBackgroundLearningCheckBoxActionPerformed(evt); + } + }); + + gaussianAverageCheckBox.setText("Gaussian Average"); + gaussianAverageCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + gaussianAverageCheckBoxActionPerformed(evt); + } + }); + + eigenbackgroundCheckBox.setText("SL-PCA / Eigenbackground"); + eigenbackgroundCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + eigenbackgroundCheckBoxActionPerformed(evt); + } + }); + + temporalMedianCheckBox.setText("Temporal Median"); + temporalMedianCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + temporalMedianCheckBoxActionPerformed(evt); + } + }); + + adaptiveMedianCheckBox.setText("Adaptive Median"); + adaptiveMedianCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + adaptiveMedianCheckBoxActionPerformed(evt); + } + }); + + temporalMeanCheckBox.setText("Temporal Mean"); + temporalMeanCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + temporalMeanCheckBoxActionPerformed(evt); + } + }); + + grimsonGMMCheckBox.setText("Grimson GMM"); + grimsonGMMCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + grimsonGMMCheckBoxActionPerformed(evt); + } + }); + + zivkovicGMMCheckBox.setText("Zivkovic GMM"); + zivkovicGMMCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + zivkovicGMMCheckBoxActionPerformed(evt); + } + }); + + adaptiveSOMCheckBox.setText("Adaptive SOM"); + adaptiveSOMCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + adaptiveSOMCheckBoxActionPerformed(evt); + } + }); + + mixtureOfGaussiansCheckBox.setText("Mixture of Gaussians"); + mixtureOfGaussiansCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + mixtureOfGaussiansCheckBoxActionPerformed(evt); + } + }); + + fuzzyGaussianCheckBox.setText("Fuzzy Gaussian"); + fuzzyGaussianCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + fuzzyGaussianCheckBoxActionPerformed(evt); + } + }); + + simpleGaussianCheckBox.setText("Simple Gaussian"); + simpleGaussianCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + simpleGaussianCheckBoxActionPerformed(evt); + } + }); + + fuzzyAdaptiveSOMCheckBox.setText("Fuzzy Adaptive SOM"); + fuzzyAdaptiveSOMCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + fuzzyAdaptiveSOMCheckBoxActionPerformed(evt); + } + }); + + T2FGMMUMCheckBox.setText("T2F GMM - UM"); + T2FGMMUMCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + T2FGMMUMCheckBoxActionPerformed(evt); + } + }); + + T2FGMMUVCheckBox.setText("T2F GMM - UV"); + T2FGMMUVCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + T2FGMMUVCheckBoxActionPerformed(evt); + } + }); + + frameDifferenceLabel.setForeground(new java.awt.Color(0, 0, 255)); + frameDifferenceLabel.setText("C"); + frameDifferenceLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + frameDifferenceLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + frameDifferenceLabelMouseClicked(evt); + } + }); + + staticFrameDifferenceLabel.setForeground(new java.awt.Color(0, 0, 255)); + staticFrameDifferenceLabel.setText("C"); + staticFrameDifferenceLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + staticFrameDifferenceLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + staticFrameDifferenceLabelMouseClicked(evt); + } + }); + + weightedMovingMeanLabel.setForeground(new java.awt.Color(0, 0, 255)); + weightedMovingMeanLabel.setText("C"); + weightedMovingMeanLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + weightedMovingMeanLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + weightedMovingMeanLabelMouseClicked(evt); + } + }); + + weightedMovingVarianceLabel.setForeground(new java.awt.Color(0, 0, 255)); + weightedMovingVarianceLabel.setText("C"); + weightedMovingVarianceLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + weightedMovingVarianceLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + weightedMovingVarianceLabelMouseClicked(evt); + } + }); + + adaptiveBackgroundLearningLabel.setForeground(new java.awt.Color(0, 0, 255)); + adaptiveBackgroundLearningLabel.setText("C"); + adaptiveBackgroundLearningLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + adaptiveBackgroundLearningLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + adaptiveBackgroundLearningLabelMouseClicked(evt); + } + }); + + openCVMoGV1Label.setForeground(new java.awt.Color(0, 0, 255)); + openCVMoGV1Label.setText("C"); + openCVMoGV1Label.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + openCVMoGV1Label.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + openCVMoGV1LabelMouseClicked(evt); + } + }); + + openCVMoGV2Label.setForeground(new java.awt.Color(0, 0, 255)); + openCVMoGV2Label.setText("C"); + openCVMoGV2Label.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + openCVMoGV2Label.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + openCVMoGV2LabelMouseClicked(evt); + } + }); + + zivkovicGMMLabel.setForeground(new java.awt.Color(0, 0, 255)); + zivkovicGMMLabel.setText("C"); + zivkovicGMMLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + zivkovicGMMLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + zivkovicGMMLabelMouseClicked(evt); + } + }); + + grimsonGMMLabel.setForeground(new java.awt.Color(0, 0, 255)); + grimsonGMMLabel.setText("C"); + grimsonGMMLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + grimsonGMMLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + grimsonGMMLabelMouseClicked(evt); + } + }); + + gaussianAverageLabel.setForeground(new java.awt.Color(0, 0, 255)); + gaussianAverageLabel.setText("C"); + gaussianAverageLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + gaussianAverageLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + gaussianAverageLabelMouseClicked(evt); + } + }); + + eigenbackgroundLabel.setForeground(new java.awt.Color(0, 0, 255)); + eigenbackgroundLabel.setText("C"); + eigenbackgroundLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + eigenbackgroundLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + eigenbackgroundLabelMouseClicked(evt); + } + }); + + temporalMedianLabel.setForeground(new java.awt.Color(0, 0, 255)); + temporalMedianLabel.setText("C"); + temporalMedianLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + temporalMedianLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + temporalMedianLabelMouseClicked(evt); + } + }); + + adaptiveMedianLabel.setForeground(new java.awt.Color(0, 0, 255)); + adaptiveMedianLabel.setText("C"); + adaptiveMedianLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + adaptiveMedianLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + adaptiveMedianLabelMouseClicked(evt); + } + }); + + temporalMeanLabel.setForeground(new java.awt.Color(0, 0, 255)); + temporalMeanLabel.setText("C"); + temporalMeanLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + temporalMeanLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + temporalMeanLabelMouseClicked(evt); + } + }); + + simpleGaussianLabel.setForeground(new java.awt.Color(0, 0, 255)); + simpleGaussianLabel.setText("C"); + simpleGaussianLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + simpleGaussianLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + simpleGaussianLabelMouseClicked(evt); + } + }); + + fuzzyGaussianLabel.setForeground(new java.awt.Color(0, 0, 255)); + fuzzyGaussianLabel.setText("C"); + fuzzyGaussianLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + fuzzyGaussianLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + fuzzyGaussianLabelMouseClicked(evt); + } + }); + + mixtureOfGaussiansLabel.setForeground(new java.awt.Color(0, 0, 255)); + mixtureOfGaussiansLabel.setText("C"); + mixtureOfGaussiansLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + mixtureOfGaussiansLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + mixtureOfGaussiansLabelMouseClicked(evt); + } + }); + + adaptiveSOMLabel.setForeground(new java.awt.Color(0, 0, 255)); + adaptiveSOMLabel.setText("C"); + adaptiveSOMLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + adaptiveSOMLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + adaptiveSOMLabelMouseClicked(evt); + } + }); + + fuzzyAdaptiveSOMLabel.setForeground(new java.awt.Color(0, 0, 255)); + fuzzyAdaptiveSOMLabel.setText("C"); + fuzzyAdaptiveSOMLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + fuzzyAdaptiveSOMLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + fuzzyAdaptiveSOMLabelMouseClicked(evt); + } + }); + + T2FGMMUMLabel.setForeground(new java.awt.Color(0, 0, 255)); + T2FGMMUMLabel.setText("C"); + T2FGMMUMLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + T2FGMMUMLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + T2FGMMUMLabelMouseClicked(evt); + } + }); + + T2FGMMUVLabel.setForeground(new java.awt.Color(0, 0, 255)); + T2FGMMUVLabel.setText("C"); + T2FGMMUVLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + T2FGMMUVLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + T2FGMMUVLabelMouseClicked(evt); + } + }); + + multiLayerBGSLabel.setForeground(new java.awt.Color(0, 0, 255)); + multiLayerBGSLabel.setText("C"); + multiLayerBGSLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + multiLayerBGSLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + multiLayerBGSLabelMouseClicked(evt); + } + }); + + multiLayerBGSCheckBox.setText("Multi Layer BGS"); + multiLayerBGSCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + multiLayerBGSCheckBoxActionPerformed(evt); + } + }); + + checkAllButton.setText("Check All"); + checkAllButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + checkAllButtonActionPerformed(evt); + } + }); + + uncheckAllButton.setText("Uncheck All"); + uncheckAllButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + uncheckAllButtonActionPerformed(evt); + } + }); + + openConfigButton.setText("Open"); + openConfigButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + openConfigButtonActionPerformed(evt); + } + }); + + fuzzySugenoIntegralLabel.setForeground(new java.awt.Color(0, 0, 255)); + fuzzySugenoIntegralLabel.setText("C"); + fuzzySugenoIntegralLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + fuzzySugenoIntegralLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + fuzzySugenoIntegralLabelMouseClicked(evt); + } + }); + + fuzzySugenoIntegralCheckBox.setText("Fuzzy Sugeno Integral"); + fuzzySugenoIntegralCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + fuzzySugenoIntegralCheckBoxActionPerformed(evt); + } + }); + + fuzzyChoquetIntegralLabel.setForeground(new java.awt.Color(0, 0, 255)); + fuzzyChoquetIntegralLabel.setText("C"); + fuzzyChoquetIntegralLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + fuzzyChoquetIntegralLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + fuzzyChoquetIntegralLabelMouseClicked(evt); + } + }); + + fuzzyChoquetIntegralCheckBox.setText("Fuzzy Choquet Integral"); + fuzzyChoquetIntegralCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + fuzzyChoquetIntegralCheckBoxActionPerformed(evt); + } + }); + + T2FMRFUMLabel.setForeground(new java.awt.Color(0, 0, 255)); + T2FMRFUMLabel.setText("C"); + T2FMRFUMLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + T2FMRFUMLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + T2FMRFUMLabelMouseClicked(evt); + } + }); + + T2FMRFUMCheckBox.setText("T2F MRF - UM"); + T2FMRFUMCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + T2FMRFUMCheckBoxActionPerformed(evt); + } + }); + + T2FMRFUVLabel.setForeground(new java.awt.Color(0, 0, 255)); + T2FMRFUVLabel.setText("C"); + T2FMRFUVLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + T2FMRFUVLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + T2FMRFUVLabelMouseClicked(evt); + } + }); + + T2FMRFUVCheckBox.setText("T2F MRF - UV"); + T2FMRFUVCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + T2FMRFUVCheckBoxActionPerformed(evt); + } + }); + + GMGCheckBox.setText("GMG"); + GMGCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + GMGCheckBoxActionPerformed(evt); + } + }); + + GMGLabel.setForeground(new java.awt.Color(0, 0, 255)); + GMGLabel.setText("C"); + GMGLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + GMGLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + GMGLabelMouseClicked(evt); + } + }); + + VuMeterLabel.setForeground(new java.awt.Color(0, 0, 255)); + VuMeterLabel.setText("C"); + VuMeterLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); + VuMeterLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + VuMeterLabelMouseClicked(evt); + } + }); + + VuMeterCheckBox.setText("VuMeter"); + VuMeterCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + VuMeterCheckBoxActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel13Layout = new javax.swing.GroupLayout(jPanel13); + jPanel13.setLayout(jPanel13Layout); + jPanel13Layout.setHorizontalGroup( + jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel13Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel13Layout.createSequentialGroup() + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(frameDifferenceLabel, javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(staticFrameDifferenceLabel, javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(weightedMovingMeanLabel, javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(weightedMovingVarianceLabel, javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(adaptiveBackgroundLearningLabel, javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(openCVMoGV1Label, javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(openCVMoGV2Label, javax.swing.GroupLayout.Alignment.TRAILING)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(staticFrameDifferenceCheckBox) + .addComponent(weightedMovingMeanCheckBox) + .addComponent(weightedMovingVarianceCheckBox) + .addComponent(adaptiveBackgroundLearningCheckBox) + .addComponent(frameDifferenceCheckBox) + .addComponent(openCVMoGV1CheckBox) + .addComponent(openCVMoGV2CheckBox)) + .addGap(18, 18, 18) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(grimsonGMMLabel) + .addComponent(zivkovicGMMLabel) + .addComponent(temporalMeanLabel) + .addComponent(gaussianAverageLabel) + .addComponent(eigenbackgroundLabel) + .addComponent(temporalMedianLabel) + .addComponent(adaptiveMedianLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(grimsonGMMCheckBox) + .addComponent(gaussianAverageCheckBox) + .addComponent(eigenbackgroundCheckBox) + .addComponent(temporalMedianCheckBox) + .addComponent(zivkovicGMMCheckBox) + .addComponent(adaptiveMedianCheckBox) + .addComponent(temporalMeanCheckBox)) + .addGap(18, 18, 18) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(fuzzyGaussianLabel) + .addComponent(simpleGaussianLabel) + .addComponent(T2FGMMUVLabel) + .addComponent(mixtureOfGaussiansLabel) + .addComponent(adaptiveSOMLabel) + .addComponent(fuzzyAdaptiveSOMLabel) + .addComponent(T2FGMMUMLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(T2FGMMUVCheckBox) + .addComponent(T2FGMMUMCheckBox) + .addComponent(fuzzyAdaptiveSOMCheckBox) + .addComponent(simpleGaussianCheckBox) + .addComponent(mixtureOfGaussiansCheckBox) + .addComponent(fuzzyGaussianCheckBox) + .addComponent(adaptiveSOMCheckBox)) + .addGap(18, 18, 18) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel13Layout.createSequentialGroup() + .addComponent(fuzzySugenoIntegralLabel) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(fuzzySugenoIntegralCheckBox)) + .addGroup(jPanel13Layout.createSequentialGroup() + .addComponent(fuzzyChoquetIntegralLabel) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(fuzzyChoquetIntegralCheckBox)) + .addGroup(jPanel13Layout.createSequentialGroup() + .addComponent(multiLayerBGSLabel) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(multiLayerBGSCheckBox)) + .addGroup(jPanel13Layout.createSequentialGroup() + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(T2FMRFUVLabel) + .addComponent(T2FMRFUMLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(T2FMRFUVCheckBox) + .addComponent(T2FMRFUMCheckBox))) + .addGroup(jPanel13Layout.createSequentialGroup() + .addComponent(GMGLabel) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(GMGCheckBox)) + .addGroup(jPanel13Layout.createSequentialGroup() + .addComponent(VuMeterLabel) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(VuMeterCheckBox))) + .addGap(0, 0, Short.MAX_VALUE)) + .addGroup(jPanel13Layout.createSequentialGroup() + .addComponent(checkAllButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(uncheckAllButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(openConfigButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap()) + ); + jPanel13Layout.setVerticalGroup( + jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel13Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel13Layout.createSequentialGroup() + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(frameDifferenceCheckBox) + .addComponent(temporalMeanCheckBox) + .addComponent(simpleGaussianCheckBox) + .addComponent(frameDifferenceLabel) + .addComponent(temporalMeanLabel) + .addComponent(simpleGaussianLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(staticFrameDifferenceCheckBox) + .addComponent(adaptiveMedianCheckBox) + .addComponent(fuzzyGaussianCheckBox) + .addComponent(staticFrameDifferenceLabel) + .addComponent(adaptiveMedianLabel) + .addComponent(fuzzyGaussianLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(weightedMovingMeanCheckBox) + .addComponent(temporalMedianCheckBox) + .addComponent(mixtureOfGaussiansCheckBox) + .addComponent(weightedMovingMeanLabel) + .addComponent(temporalMedianLabel) + .addComponent(mixtureOfGaussiansLabel)) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(weightedMovingVarianceCheckBox) + .addComponent(eigenbackgroundCheckBox) + .addComponent(adaptiveSOMCheckBox) + .addComponent(weightedMovingVarianceLabel) + .addComponent(eigenbackgroundLabel) + .addComponent(adaptiveSOMLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(adaptiveBackgroundLearningCheckBox) + .addComponent(gaussianAverageCheckBox) + .addComponent(fuzzyAdaptiveSOMCheckBox) + .addComponent(adaptiveBackgroundLearningLabel) + .addComponent(gaussianAverageLabel) + .addComponent(fuzzyAdaptiveSOMLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(openCVMoGV1CheckBox) + .addComponent(grimsonGMMCheckBox) + .addComponent(T2FGMMUMCheckBox) + .addComponent(openCVMoGV1Label) + .addComponent(grimsonGMMLabel) + .addComponent(T2FGMMUMLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(openCVMoGV2CheckBox) + .addComponent(zivkovicGMMCheckBox) + .addComponent(T2FGMMUVCheckBox) + .addComponent(openCVMoGV2Label) + .addComponent(zivkovicGMMLabel) + .addComponent(T2FGMMUVLabel))) + .addGroup(jPanel13Layout.createSequentialGroup() + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(T2FMRFUMCheckBox) + .addComponent(T2FMRFUMLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(T2FMRFUVCheckBox) + .addComponent(T2FMRFUVLabel)) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel13Layout.createSequentialGroup() + .addGap(24, 24, 24) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(fuzzyChoquetIntegralCheckBox) + .addComponent(fuzzyChoquetIntegralLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(multiLayerBGSCheckBox) + .addComponent(multiLayerBGSLabel))) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(fuzzySugenoIntegralCheckBox) + .addComponent(fuzzySugenoIntegralLabel))) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(GMGCheckBox) + .addComponent(GMGLabel)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(VuMeterCheckBox) + .addComponent(VuMeterLabel)))) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 30, Short.MAX_VALUE) + .addGroup(jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(checkAllButton) + .addComponent(uncheckAllButton) + .addComponent(openConfigButton)) + .addContainerGap()) + ); + + javax.swing.GroupLayout jPanel11Layout = new javax.swing.GroupLayout(jPanel11); + jPanel11.setLayout(jPanel11Layout); + jPanel11Layout.setHorizontalGroup( + jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel11Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel11, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(jPanel11Layout.createSequentialGroup() + .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jPanel13, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jPanel12, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(0, 0, Short.MAX_VALUE))) + .addContainerGap()) + ); + jPanel11Layout.setVerticalGroup( + jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel11Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel11) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jPanel12, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jPanel13, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addContainerGap()) + ); + + runButton2.setText("Run"); + runButton2.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + runButton2ActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addComponent(jPanel11, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(0, 0, Short.MAX_VALUE)) + .addGroup(jPanel2Layout.createSequentialGroup() + .addComponent(jPanel9, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jPanel10, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(reloadButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(runButton2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE)))) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addComponent(reloadButton) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(runButton2)) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(jPanel10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel9, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jPanel11, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addContainerGap()) + ); + + appTabbedPane.addTab("Config", jPanel2); + + jToolBar1.setFloatable(false); + + saveButton.setText("Save"); + saveButton.setFocusable(false); + saveButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + saveButton.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + saveButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + saveButtonActionPerformed(evt); + } + }); + jToolBar1.add(saveButton); + jToolBar1.add(jSeparator1); + + returnButton.setText("Return"); + returnButton.setFocusable(false); + returnButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + returnButton.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + returnButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + returnButtonActionPerformed(evt); + } + }); + jToolBar1.add(returnButton); + jToolBar1.add(jSeparator3); + + runButton3.setText("Run"); + runButton3.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + runButton3ActionPerformed(evt); + } + }); + jToolBar1.add(runButton3); + + jPanel17.setBorder(javax.swing.BorderFactory.createTitledBorder("File Content")); + + jScrollPane1.setAutoscrolls(true); + jScrollPane1.setDoubleBuffered(true); + + fileContentTextPane.setDoubleBuffered(true); + jScrollPane1.setViewportView(fileContentTextPane); + + jLabel12.setText("File name:"); + + fileNameLabel.setText("_"); + + javax.swing.GroupLayout jPanel17Layout = new javax.swing.GroupLayout(jPanel17); + jPanel17.setLayout(jPanel17Layout); + jPanel17Layout.setHorizontalGroup( + jPanel17Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel17Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel17Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel17Layout.createSequentialGroup() + .addComponent(jLabel12) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(fileNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 710, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(18, Short.MAX_VALUE)) + ); + jPanel17Layout.setVerticalGroup( + jPanel17Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel17Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 487, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel17Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel12) + .addComponent(fileNameLabel)) + .addContainerGap()) + ); + + javax.swing.GroupLayout jPanel16Layout = new javax.swing.GroupLayout(jPanel16); + jPanel16.setLayout(jPanel16Layout); + jPanel16Layout.setHorizontalGroup( + jPanel16Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel16Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel16Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel16Layout.createSequentialGroup() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(0, 0, Short.MAX_VALUE)) + .addComponent(jPanel17, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel16Layout.setVerticalGroup( + jPanel16Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel16Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jPanel17, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addContainerGap()) + ); + + appTabbedPane.addTab("Editor", jPanel16); + + logTextScrollPane.setDoubleBuffered(true); + + logTextPane.setEditable(false); + logTextPane.setDoubleBuffered(true); + logTextScrollPane.setViewportView(logTextPane); + + jToolBar2.setFloatable(false); + + clearButton.setText("Clear"); + clearButton.setFocusable(false); + clearButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + clearButton.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + clearButton.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + clearButtonActionPerformed(evt); + } + }); + jToolBar2.add(clearButton); + jToolBar2.add(jSeparator4); + + runButton4.setText("Run"); + runButton4.setFocusable(false); + runButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + runButton4.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + runButton4.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + runButton4ActionPerformed(evt); + } + }); + jToolBar2.add(runButton4); + jToolBar2.add(jSeparator2); + + returnButton2.setText("Return"); + returnButton2.setFocusable(false); + returnButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + returnButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + returnButton2.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + returnButton2ActionPerformed(evt); + } + }); + jToolBar2.add(returnButton2); + jToolBar2.add(jSeparator5); + + autoscrollCheckBox.setFocusable(false); + autoscrollCheckBox.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + autoscrollCheckBox.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + autoscrollCheckBox.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + autoscrollCheckBoxActionPerformed(evt); + } + }); + jToolBar2.add(autoscrollCheckBox); + + autoscrollLabel.setText(" Autoscroll"); + autoscrollLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + autoscrollLabelMouseClicked(evt); + } + }); + jToolBar2.add(autoscrollLabel); + jToolBar2.add(jSeparator6); + + autoclearCheckBox.setFocusable(false); + autoclearCheckBox.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + autoclearCheckBox.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar2.add(autoclearCheckBox); + + autoclearLabel.setText(" Autoclear"); + autoclearLabel.addMouseListener(new java.awt.event.MouseAdapter() + { + public void mouseClicked(java.awt.event.MouseEvent evt) + { + autoclearLabelMouseClicked(evt); + } + }); + jToolBar2.add(autoclearLabel); + + javax.swing.GroupLayout jPanel18Layout = new javax.swing.GroupLayout(jPanel18); + jPanel18.setLayout(jPanel18Layout); + jPanel18Layout.setHorizontalGroup( + jPanel18Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel18Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel18Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(logTextScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, 741, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jToolBar2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(19, Short.MAX_VALUE)) + ); + jPanel18Layout.setVerticalGroup( + jPanel18Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel18Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jToolBar2, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(logTextScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 552, Short.MAX_VALUE) + .addContainerGap()) + ); + + appTabbedPane.addTab("Log", jPanel18); + + jMenu3.setText("App"); + + jMenuItem1.setText("Exit"); + jMenuItem1.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + jMenuItem1ActionPerformed(evt); + } + }); + jMenu3.add(jMenuItem1); + + jMenuBar2.add(jMenu3); + + jMenu4.setText("Help"); + + jMenuItem2.setText("About"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(java.awt.event.ActionEvent evt) + { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu4.add(jMenuItem2); + + jMenuBar2.add(jMenu4); + + setJMenuBar(jMenuBar2); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(appTabbedPane, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(appTabbedPane) + .addContainerGap()) + ); + + pack(); + }// </editor-fold>//GEN-END:initComponents + + private AboutDialog dialog = null; + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_jMenuItem2ActionPerformed + {//GEN-HEADEREND:event_jMenuItem2ActionPerformed + java.awt.EventQueue.invokeLater(new Runnable() + { + @Override + public void run() + { + dialog = new AboutDialog(new javax.swing.JFrame(), true); + dialog.addWindowListener(new java.awt.event.WindowAdapter() + { + @Override + public void windowClosing(java.awt.event.WindowEvent e) + { + //System.exit(0); + } + }); + dialog.setVisible(true); + } + }); + }//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_jMenuItem1ActionPerformed + {//GEN-HEADEREND:event_jMenuItem1ActionPerformed + System.exit(0); + }//GEN-LAST:event_jMenuItem1ActionPerformed + + private void returnButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_returnButtonActionPerformed + {//GEN-HEADEREND:event_returnButtonActionPerformed + retur(true); + }//GEN-LAST:event_returnButtonActionPerformed + + private void useCameraRadioButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_useCameraRadioButtonActionPerformed + {//GEN-HEADEREND:event_useCameraRadioButtonActionPerformed + useCameraRadioButton.setSelected(true); + useVideoRadioButton.setSelected(false); + useDatasetRadioButton.setSelected(false); + Command.setUseCamera(); + update(); + }//GEN-LAST:event_useCameraRadioButtonActionPerformed + + private void useVideoRadioButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_useVideoRadioButtonActionPerformed + {//GEN-HEADEREND:event_useVideoRadioButtonActionPerformed + useCameraRadioButton.setSelected(false); + useVideoRadioButton.setSelected(true); + useDatasetRadioButton.setSelected(false); + Command.setUseVideo(); + update(); + }//GEN-LAST:event_useVideoRadioButtonActionPerformed + + private void useDatasetRadioButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_useDatasetRadioButtonActionPerformed + {//GEN-HEADEREND:event_useDatasetRadioButtonActionPerformed + useCameraRadioButton.setSelected(false); + useVideoRadioButton.setSelected(false); + useDatasetRadioButton.setSelected(true); + Command.setUseDataset(); + update(); + }//GEN-LAST:event_useDatasetRadioButtonActionPerformed + + private void setInputFileButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_setInputFileButtonActionPerformed + {//GEN-HEADEREND:event_setInputFileButtonActionPerformed + useVideoRadioButtonActionPerformed(null); + Command.setInputFile(getFilePath(false)); + update(); + }//GEN-LAST:event_setInputFileButtonActionPerformed + + private void setDatasetFolderButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_setDatasetFolderButtonActionPerformed + {//GEN-HEADEREND:event_setDatasetFolderButtonActionPerformed + useDatasetRadioButtonActionPerformed(null); + Command.setDatasetFolder(getFilePath(true)); + update(); + }//GEN-LAST:event_setDatasetFolderButtonActionPerformed + + private void setTrainFileButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_setTrainFileButtonActionPerformed + {//GEN-HEADEREND:event_setTrainFileButtonActionPerformed + useDatasetRadioButtonActionPerformed(null); + Command.setTrainFile(getFilePath(false)); + update(); + }//GEN-LAST:event_setTrainFileButtonActionPerformed + + private void setTestFileButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_setTestFileButtonActionPerformed + {//GEN-HEADEREND:event_setTestFileButtonActionPerformed + useDatasetRadioButtonActionPerformed(null); + Command.setTestFile(getFilePath(false)); + update(); + }//GEN-LAST:event_setTestFileButtonActionPerformed + + private void useForegroundMaskAnalysisCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_useForegroundMaskAnalysisCheckBoxActionPerformed + {//GEN-HEADEREND:event_useForegroundMaskAnalysisCheckBoxActionPerformed + Command.setUseForegroundMaskAnalysis(useForegroundMaskAnalysisCheckBox.isSelected()); + Command.setCompareAt(Integer.parseInt(compareAtTextField.getText())); + update(); + }//GEN-LAST:event_useForegroundMaskAnalysisCheckBoxActionPerformed + + private void setImageRefButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_setImageRefButtonActionPerformed + {//GEN-HEADEREND:event_setImageRefButtonActionPerformed + Command.setImageRefFile(getFilePath(false)); + Command.setCompareAt(Integer.parseInt(compareAtTextField.getText())); + update(); + }//GEN-LAST:event_setImageRefButtonActionPerformed + + private void compareAtTextFieldFocusLost(java.awt.event.FocusEvent evt)//GEN-FIRST:event_compareAtTextFieldFocusLost + {//GEN-HEADEREND:event_compareAtTextFieldFocusLost + Command.setCompareAt(Integer.parseInt(compareAtTextField.getText())); + update(); + }//GEN-LAST:event_compareAtTextFieldFocusLost + + private void saveButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_saveButtonActionPerformed + {//GEN-HEADEREND:event_saveButtonActionPerformed + save(); + }//GEN-LAST:event_saveButtonActionPerformed + + private void reloadButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_reloadButtonActionPerformed + {//GEN-HEADEREND:event_reloadButtonActionPerformed + reload(); + }//GEN-LAST:event_reloadButtonActionPerformed + + private void preProcessorLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_preProcessorLabelMouseClicked + {//GEN-HEADEREND:event_preProcessorLabelMouseClicked + openFileContent(Configuration.PreProcessor); + }//GEN-LAST:event_preProcessorLabelMouseClicked + + private void resizeFrameTextFieldFocusLost(java.awt.event.FocusEvent evt)//GEN-FIRST:event_resizeFrameTextFieldFocusLost + {//GEN-HEADEREND:event_resizeFrameTextFieldFocusLost + changeParam("input_resize_percent", resizeFrameTextField.getText(), Configuration.VideoCapture); + }//GEN-LAST:event_resizeFrameTextFieldFocusLost + + private void stopVideoAtTextFieldFocusLost(java.awt.event.FocusEvent evt)//GEN-FIRST:event_stopVideoAtTextFieldFocusLost + {//GEN-HEADEREND:event_stopVideoAtTextFieldFocusLost + changeParam("stopAt", stopVideoAtTextField.getText(), Configuration.VideoCapture); + }//GEN-LAST:event_stopVideoAtTextFieldFocusLost + + private void verticalFlipCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_verticalFlipCheckBoxActionPerformed + {//GEN-HEADEREND:event_verticalFlipCheckBoxActionPerformed + changeParam("enableFlip", verticalFlipCheckBox, Configuration.VideoCapture); + }//GEN-LAST:event_verticalFlipCheckBoxActionPerformed + + private void showOutputCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_showOutputCheckBoxActionPerformed + {//GEN-HEADEREND:event_showOutputCheckBoxActionPerformed + changeParam("showOutput", showOutputCheckBox, Configuration.VideoCapture); + }//GEN-LAST:event_showOutputCheckBoxActionPerformed + + private void useROICheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_useROICheckBoxActionPerformed + {//GEN-HEADEREND:event_useROICheckBoxActionPerformed + changeParam("use_roi", useROICheckBox, Configuration.VideoCapture); + }//GEN-LAST:event_useROICheckBoxActionPerformed + + private void ROIdefinedCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_ROIdefinedCheckBoxActionPerformed + {//GEN-HEADEREND:event_ROIdefinedCheckBoxActionPerformed + changeParam("roi_defined", ROIdefinedCheckBox, Configuration.VideoCapture); + }//GEN-LAST:event_ROIdefinedCheckBoxActionPerformed + + private void x0ROITextFieldFocusLost(java.awt.event.FocusEvent evt)//GEN-FIRST:event_x0ROITextFieldFocusLost + {//GEN-HEADEREND:event_x0ROITextFieldFocusLost + changeParam("roi_x0", x0ROITextField.getText(), Configuration.VideoCapture); + }//GEN-LAST:event_x0ROITextFieldFocusLost + + private void x1ROITextFieldFocusLost(java.awt.event.FocusEvent evt)//GEN-FIRST:event_x1ROITextFieldFocusLost + {//GEN-HEADEREND:event_x1ROITextFieldFocusLost + changeParam("roi_x1", x1ROITextField.getText(), Configuration.VideoCapture); + }//GEN-LAST:event_x1ROITextFieldFocusLost + + private void y0ROITextFieldFocusLost(java.awt.event.FocusEvent evt)//GEN-FIRST:event_y0ROITextFieldFocusLost + {//GEN-HEADEREND:event_y0ROITextFieldFocusLost + changeParam("roi_y0", y0ROITextField.getText(), Configuration.VideoCapture); + }//GEN-LAST:event_y0ROITextFieldFocusLost + + private void y1ROITextFieldFocusLost(java.awt.event.FocusEvent evt)//GEN-FIRST:event_y1ROITextFieldFocusLost + {//GEN-HEADEREND:event_y1ROITextFieldFocusLost + changeParam("roi_y1", y1ROITextField.getText(), Configuration.VideoCapture); + }//GEN-LAST:event_y1ROITextFieldFocusLost + + private void preProcessorCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_preProcessorCheckBoxActionPerformed + {//GEN-HEADEREND:event_preProcessorCheckBoxActionPerformed + changeParam("enablePreProcessor", preProcessorCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_preProcessorCheckBoxActionPerformed + + private void tictocComboBoxItemStateChanged(java.awt.event.ItemEvent evt)//GEN-FIRST:event_tictocComboBoxItemStateChanged + {//GEN-HEADEREND:event_tictocComboBoxItemStateChanged + changeParam("tictoc", tictocComboBox, Configuration.FrameProcessor); + }//GEN-LAST:event_tictocComboBoxItemStateChanged + + private void frameDifferenceCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_frameDifferenceCheckBoxActionPerformed + {//GEN-HEADEREND:event_frameDifferenceCheckBoxActionPerformed + changeParam("enableFrameDifferenceBGS", frameDifferenceCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_frameDifferenceCheckBoxActionPerformed + + private void staticFrameDifferenceCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_staticFrameDifferenceCheckBoxActionPerformed + {//GEN-HEADEREND:event_staticFrameDifferenceCheckBoxActionPerformed + changeParam("enableStaticFrameDifferenceBGS", staticFrameDifferenceCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_staticFrameDifferenceCheckBoxActionPerformed + + private void weightedMovingMeanCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_weightedMovingMeanCheckBoxActionPerformed + {//GEN-HEADEREND:event_weightedMovingMeanCheckBoxActionPerformed + changeParam("enableWeightedMovingMeanBGS", weightedMovingMeanCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_weightedMovingMeanCheckBoxActionPerformed + + private void weightedMovingVarianceCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_weightedMovingVarianceCheckBoxActionPerformed + {//GEN-HEADEREND:event_weightedMovingVarianceCheckBoxActionPerformed + changeParam("enableWeightedMovingVarianceBGS", weightedMovingVarianceCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_weightedMovingVarianceCheckBoxActionPerformed + + private void adaptiveBackgroundLearningCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_adaptiveBackgroundLearningCheckBoxActionPerformed + {//GEN-HEADEREND:event_adaptiveBackgroundLearningCheckBoxActionPerformed + changeParam("enableAdaptiveBackgroundLearning", adaptiveBackgroundLearningCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_adaptiveBackgroundLearningCheckBoxActionPerformed + + private void openCVMoGV1CheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_openCVMoGV1CheckBoxActionPerformed + {//GEN-HEADEREND:event_openCVMoGV1CheckBoxActionPerformed + changeParam("enableMixtureOfGaussianV1BGS", openCVMoGV1CheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_openCVMoGV1CheckBoxActionPerformed + + private void openCVMoGV2CheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_openCVMoGV2CheckBoxActionPerformed + {//GEN-HEADEREND:event_openCVMoGV2CheckBoxActionPerformed + changeParam("enableMixtureOfGaussianV2BGS", openCVMoGV2CheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_openCVMoGV2CheckBoxActionPerformed + + private void temporalMeanCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_temporalMeanCheckBoxActionPerformed + {//GEN-HEADEREND:event_temporalMeanCheckBoxActionPerformed + changeParam("enableDPMeanBGS", temporalMeanCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_temporalMeanCheckBoxActionPerformed + + private void adaptiveMedianCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_adaptiveMedianCheckBoxActionPerformed + {//GEN-HEADEREND:event_adaptiveMedianCheckBoxActionPerformed + changeParam("enableDPAdaptiveMedianBGS", adaptiveMedianCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_adaptiveMedianCheckBoxActionPerformed + + private void temporalMedianCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_temporalMedianCheckBoxActionPerformed + {//GEN-HEADEREND:event_temporalMedianCheckBoxActionPerformed + changeParam("enableDPPratiMediodBGS", temporalMedianCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_temporalMedianCheckBoxActionPerformed + + private void eigenbackgroundCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_eigenbackgroundCheckBoxActionPerformed + {//GEN-HEADEREND:event_eigenbackgroundCheckBoxActionPerformed + changeParam("enableDPEigenbackgroundBGS", eigenbackgroundCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_eigenbackgroundCheckBoxActionPerformed + + private void gaussianAverageCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_gaussianAverageCheckBoxActionPerformed + {//GEN-HEADEREND:event_gaussianAverageCheckBoxActionPerformed + changeParam("enableDPWrenGABGS", gaussianAverageCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_gaussianAverageCheckBoxActionPerformed + + private void grimsonGMMCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_grimsonGMMCheckBoxActionPerformed + {//GEN-HEADEREND:event_grimsonGMMCheckBoxActionPerformed + changeParam("enableDPGrimsonGMMBGS", grimsonGMMCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_grimsonGMMCheckBoxActionPerformed + + private void zivkovicGMMCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_zivkovicGMMCheckBoxActionPerformed + {//GEN-HEADEREND:event_zivkovicGMMCheckBoxActionPerformed + changeParam("enableDPZivkovicAGMMBGS", zivkovicGMMCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_zivkovicGMMCheckBoxActionPerformed + + private void simpleGaussianCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_simpleGaussianCheckBoxActionPerformed + {//GEN-HEADEREND:event_simpleGaussianCheckBoxActionPerformed + changeParam("enableLBSimpleGaussian", simpleGaussianCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_simpleGaussianCheckBoxActionPerformed + + private void fuzzyGaussianCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_fuzzyGaussianCheckBoxActionPerformed + {//GEN-HEADEREND:event_fuzzyGaussianCheckBoxActionPerformed + changeParam("enableLBFuzzyGaussian", fuzzyGaussianCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_fuzzyGaussianCheckBoxActionPerformed + + private void mixtureOfGaussiansCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_mixtureOfGaussiansCheckBoxActionPerformed + {//GEN-HEADEREND:event_mixtureOfGaussiansCheckBoxActionPerformed + changeParam("enableLBMixtureOfGaussians", mixtureOfGaussiansCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_mixtureOfGaussiansCheckBoxActionPerformed + + private void adaptiveSOMCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_adaptiveSOMCheckBoxActionPerformed + {//GEN-HEADEREND:event_adaptiveSOMCheckBoxActionPerformed + changeParam("enableLBAdaptiveSOM", adaptiveSOMCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_adaptiveSOMCheckBoxActionPerformed + + private void fuzzyAdaptiveSOMCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_fuzzyAdaptiveSOMCheckBoxActionPerformed + {//GEN-HEADEREND:event_fuzzyAdaptiveSOMCheckBoxActionPerformed + changeParam("enableLBFuzzyAdaptiveSOM", fuzzyAdaptiveSOMCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_fuzzyAdaptiveSOMCheckBoxActionPerformed + + private void T2FGMMUMCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_T2FGMMUMCheckBoxActionPerformed + {//GEN-HEADEREND:event_T2FGMMUMCheckBoxActionPerformed + changeParam("enableT2FGMM_UM", T2FGMMUMCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_T2FGMMUMCheckBoxActionPerformed + + private void T2FGMMUVCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_T2FGMMUVCheckBoxActionPerformed + {//GEN-HEADEREND:event_T2FGMMUVCheckBoxActionPerformed + changeParam("enableT2FGMM_UV", T2FGMMUVCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_T2FGMMUVCheckBoxActionPerformed + + private void multiLayerBGSCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_multiLayerBGSCheckBoxActionPerformed + {//GEN-HEADEREND:event_multiLayerBGSCheckBoxActionPerformed + changeParam("enableMultiLayerBGS", multiLayerBGSCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_multiLayerBGSCheckBoxActionPerformed + + private void foregroundMaskAnalysisCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_foregroundMaskAnalysisCheckBoxActionPerformed + {//GEN-HEADEREND:event_foregroundMaskAnalysisCheckBoxActionPerformed + changeParam("enableForegroundMaskAnalysis", foregroundMaskAnalysisCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_foregroundMaskAnalysisCheckBoxActionPerformed + + private void frameDifferenceLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_frameDifferenceLabelMouseClicked + {//GEN-HEADEREND:event_frameDifferenceLabelMouseClicked + openFileContent(Configuration.FrameDifferenceBGS); + }//GEN-LAST:event_frameDifferenceLabelMouseClicked + + private void staticFrameDifferenceLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_staticFrameDifferenceLabelMouseClicked + {//GEN-HEADEREND:event_staticFrameDifferenceLabelMouseClicked + openFileContent(Configuration.StaticFrameDifferenceBGS); + }//GEN-LAST:event_staticFrameDifferenceLabelMouseClicked + + private void weightedMovingMeanLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_weightedMovingMeanLabelMouseClicked + {//GEN-HEADEREND:event_weightedMovingMeanLabelMouseClicked + openFileContent(Configuration.WeightedMovingMeanBGS); + }//GEN-LAST:event_weightedMovingMeanLabelMouseClicked + + private void weightedMovingVarianceLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_weightedMovingVarianceLabelMouseClicked + {//GEN-HEADEREND:event_weightedMovingVarianceLabelMouseClicked + openFileContent(Configuration.WeightedMovingVarianceBGS); + }//GEN-LAST:event_weightedMovingVarianceLabelMouseClicked + + private void adaptiveBackgroundLearningLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_adaptiveBackgroundLearningLabelMouseClicked + {//GEN-HEADEREND:event_adaptiveBackgroundLearningLabelMouseClicked + openFileContent(Configuration.AdaptiveBackgroundLearning); + }//GEN-LAST:event_adaptiveBackgroundLearningLabelMouseClicked + + private void openCVMoGV1LabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_openCVMoGV1LabelMouseClicked + {//GEN-HEADEREND:event_openCVMoGV1LabelMouseClicked + openFileContent(Configuration.MixtureOfGaussianV1BGS); + }//GEN-LAST:event_openCVMoGV1LabelMouseClicked + + private void openCVMoGV2LabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_openCVMoGV2LabelMouseClicked + {//GEN-HEADEREND:event_openCVMoGV2LabelMouseClicked + openFileContent(Configuration.MixtureOfGaussianV2BGS); + }//GEN-LAST:event_openCVMoGV2LabelMouseClicked + + private void temporalMeanLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_temporalMeanLabelMouseClicked + {//GEN-HEADEREND:event_temporalMeanLabelMouseClicked + openFileContent(Configuration.DPMeanBGS); + }//GEN-LAST:event_temporalMeanLabelMouseClicked + + private void adaptiveMedianLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_adaptiveMedianLabelMouseClicked + {//GEN-HEADEREND:event_adaptiveMedianLabelMouseClicked + openFileContent(Configuration.DPAdaptiveMedianBGS); + }//GEN-LAST:event_adaptiveMedianLabelMouseClicked + + private void temporalMedianLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_temporalMedianLabelMouseClicked + {//GEN-HEADEREND:event_temporalMedianLabelMouseClicked + openFileContent(Configuration.DPPratiMediodBGS); + }//GEN-LAST:event_temporalMedianLabelMouseClicked + + private void eigenbackgroundLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_eigenbackgroundLabelMouseClicked + {//GEN-HEADEREND:event_eigenbackgroundLabelMouseClicked + openFileContent(Configuration.DPEigenbackgroundBGS); + }//GEN-LAST:event_eigenbackgroundLabelMouseClicked + + private void gaussianAverageLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_gaussianAverageLabelMouseClicked + {//GEN-HEADEREND:event_gaussianAverageLabelMouseClicked + openFileContent(Configuration.DPWrenGABGS); + }//GEN-LAST:event_gaussianAverageLabelMouseClicked + + private void grimsonGMMLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_grimsonGMMLabelMouseClicked + {//GEN-HEADEREND:event_grimsonGMMLabelMouseClicked + openFileContent(Configuration.DPGrimsonGMMBGS); + }//GEN-LAST:event_grimsonGMMLabelMouseClicked + + private void zivkovicGMMLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_zivkovicGMMLabelMouseClicked + {//GEN-HEADEREND:event_zivkovicGMMLabelMouseClicked + openFileContent(Configuration.DPZivkovicAGMMBGS); + }//GEN-LAST:event_zivkovicGMMLabelMouseClicked + + private void simpleGaussianLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_simpleGaussianLabelMouseClicked + {//GEN-HEADEREND:event_simpleGaussianLabelMouseClicked + openFileContent(Configuration.LBSimpleGaussian); + }//GEN-LAST:event_simpleGaussianLabelMouseClicked + + private void fuzzyGaussianLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_fuzzyGaussianLabelMouseClicked + {//GEN-HEADEREND:event_fuzzyGaussianLabelMouseClicked + openFileContent(Configuration.LBFuzzyGaussian); + }//GEN-LAST:event_fuzzyGaussianLabelMouseClicked + + private void mixtureOfGaussiansLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_mixtureOfGaussiansLabelMouseClicked + {//GEN-HEADEREND:event_mixtureOfGaussiansLabelMouseClicked + openFileContent(Configuration.LBMixtureOfGaussians); + }//GEN-LAST:event_mixtureOfGaussiansLabelMouseClicked + + private void adaptiveSOMLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_adaptiveSOMLabelMouseClicked + {//GEN-HEADEREND:event_adaptiveSOMLabelMouseClicked + openFileContent(Configuration.LBAdaptiveSOM); + }//GEN-LAST:event_adaptiveSOMLabelMouseClicked + + private void fuzzyAdaptiveSOMLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_fuzzyAdaptiveSOMLabelMouseClicked + {//GEN-HEADEREND:event_fuzzyAdaptiveSOMLabelMouseClicked + openFileContent(Configuration.LBFuzzyAdaptiveSOM); + }//GEN-LAST:event_fuzzyAdaptiveSOMLabelMouseClicked + + private void T2FGMMUMLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_T2FGMMUMLabelMouseClicked + {//GEN-HEADEREND:event_T2FGMMUMLabelMouseClicked + openFileContent(Configuration.T2FGMM_UM); + }//GEN-LAST:event_T2FGMMUMLabelMouseClicked + + private void T2FGMMUVLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_T2FGMMUVLabelMouseClicked + {//GEN-HEADEREND:event_T2FGMMUVLabelMouseClicked + openFileContent(Configuration.T2FGMM_UV); + }//GEN-LAST:event_T2FGMMUVLabelMouseClicked + + private void multiLayerBGSLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_multiLayerBGSLabelMouseClicked + {//GEN-HEADEREND:event_multiLayerBGSLabelMouseClicked + openFileContent(Configuration.MultiLayerBGS); + }//GEN-LAST:event_multiLayerBGSLabelMouseClicked + + private void foregroundMaskAnalysisLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_foregroundMaskAnalysisLabelMouseClicked + {//GEN-HEADEREND:event_foregroundMaskAnalysisLabelMouseClicked + openFileContent(Configuration.ForegroundMaskAnalysis); + }//GEN-LAST:event_foregroundMaskAnalysisLabelMouseClicked + + private void loadConfigComboBoxItemStateChanged(java.awt.event.ItemEvent evt)//GEN-FIRST:event_loadConfigComboBoxItemStateChanged + {//GEN-HEADEREND:event_loadConfigComboBoxItemStateChanged + update(); + }//GEN-LAST:event_loadConfigComboBoxItemStateChanged + + private void editButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_editButtonActionPerformed + {//GEN-HEADEREND:event_editButtonActionPerformed + if(loadConfigComboBox.getSelectedIndex() > 0) + openFileContent(loadConfigComboBox.getSelectedItem().toString()); + }//GEN-LAST:event_editButtonActionPerformed + + private void runButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_runButtonActionPerformed + {//GEN-HEADEREND:event_runButtonActionPerformed + appTabbedPaneSelectedIndex = 0; + execute(); + }//GEN-LAST:event_runButtonActionPerformed + + private void clearButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_clearButtonActionPerformed + {//GEN-HEADEREND:event_clearButtonActionPerformed + logTextPane.setText(""); + }//GEN-LAST:event_clearButtonActionPerformed + + private void autoscrollCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_autoscrollCheckBoxActionPerformed + {//GEN-HEADEREND:event_autoscrollCheckBoxActionPerformed + autoscroll(); + }//GEN-LAST:event_autoscrollCheckBoxActionPerformed + + private void autoscrollLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_autoscrollLabelMouseClicked + {//GEN-HEADEREND:event_autoscrollLabelMouseClicked + autoscrollCheckBox.setSelected(!autoscrollCheckBox.isSelected()); + autoscrollCheckBoxActionPerformed(null); + }//GEN-LAST:event_autoscrollLabelMouseClicked + + private void checkAllButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_checkAllButtonActionPerformed + {//GEN-HEADEREND:event_checkAllButtonActionPerformed + enableAllBGS(); + }//GEN-LAST:event_checkAllButtonActionPerformed + + private void uncheckAllButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_uncheckAllButtonActionPerformed + {//GEN-HEADEREND:event_uncheckAllButtonActionPerformed + disableAllBGS(); + }//GEN-LAST:event_uncheckAllButtonActionPerformed + + private void openConfigButtonActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_openConfigButtonActionPerformed + {//GEN-HEADEREND:event_openConfigButtonActionPerformed + openFileContent(Configuration.FrameProcessor); + }//GEN-LAST:event_openConfigButtonActionPerformed + + private void fuzzySugenoIntegralLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_fuzzySugenoIntegralLabelMouseClicked + {//GEN-HEADEREND:event_fuzzySugenoIntegralLabelMouseClicked + openFileContent(Configuration.FuzzySugenoIntegral); + }//GEN-LAST:event_fuzzySugenoIntegralLabelMouseClicked + + private void fuzzySugenoIntegralCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_fuzzySugenoIntegralCheckBoxActionPerformed + {//GEN-HEADEREND:event_fuzzySugenoIntegralCheckBoxActionPerformed + changeParam("enableFuzzySugenoIntegral", fuzzySugenoIntegralCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_fuzzySugenoIntegralCheckBoxActionPerformed + + private void fuzzyChoquetIntegralLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_fuzzyChoquetIntegralLabelMouseClicked + {//GEN-HEADEREND:event_fuzzyChoquetIntegralLabelMouseClicked + openFileContent(Configuration.FuzzyChoquetIntegral); + }//GEN-LAST:event_fuzzyChoquetIntegralLabelMouseClicked + + private void fuzzyChoquetIntegralCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_fuzzyChoquetIntegralCheckBoxActionPerformed + {//GEN-HEADEREND:event_fuzzyChoquetIntegralCheckBoxActionPerformed + changeParam("enableFuzzyChoquetIntegral", fuzzyChoquetIntegralCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_fuzzyChoquetIntegralCheckBoxActionPerformed + + private void runButton2ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_runButton2ActionPerformed + {//GEN-HEADEREND:event_runButton2ActionPerformed + appTabbedPaneSelectedIndex = 1; + execute(); + }//GEN-LAST:event_runButton2ActionPerformed + + private void runButton3ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_runButton3ActionPerformed + {//GEN-HEADEREND:event_runButton3ActionPerformed + appTabbedPaneSelectedIndex = 2; + execute(); + }//GEN-LAST:event_runButton3ActionPerformed + + private void runButton4ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_runButton4ActionPerformed + {//GEN-HEADEREND:event_runButton4ActionPerformed + execute(); + }//GEN-LAST:event_runButton4ActionPerformed + + private void returnButton2ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_returnButton2ActionPerformed + {//GEN-HEADEREND:event_returnButton2ActionPerformed + retur(false); + }//GEN-LAST:event_returnButton2ActionPerformed + + private void autoclearLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_autoclearLabelMouseClicked + {//GEN-HEADEREND:event_autoclearLabelMouseClicked + autoclearCheckBox.setSelected(!autoclearCheckBox.isSelected()); + }//GEN-LAST:event_autoclearLabelMouseClicked + + private void T2FMRFUMLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_T2FMRFUMLabelMouseClicked + {//GEN-HEADEREND:event_T2FMRFUMLabelMouseClicked + openFileContent(Configuration.T2FMRF_UM); + }//GEN-LAST:event_T2FMRFUMLabelMouseClicked + + private void T2FMRFUMCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_T2FMRFUMCheckBoxActionPerformed + {//GEN-HEADEREND:event_T2FMRFUMCheckBoxActionPerformed + changeParam("enableT2FMRF_UM", T2FMRFUMCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_T2FMRFUMCheckBoxActionPerformed + + private void T2FMRFUVLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_T2FMRFUVLabelMouseClicked + {//GEN-HEADEREND:event_T2FMRFUVLabelMouseClicked + openFileContent(Configuration.T2FMRF_UV); + }//GEN-LAST:event_T2FMRFUVLabelMouseClicked + + private void T2FMRFUVCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_T2FMRFUVCheckBoxActionPerformed + {//GEN-HEADEREND:event_T2FMRFUVCheckBoxActionPerformed + changeParam("enableT2FMRF_UV", T2FMRFUVCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_T2FMRFUVCheckBoxActionPerformed + + private void GMGCheckBoxActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_GMGCheckBoxActionPerformed + {//GEN-HEADEREND:event_GMGCheckBoxActionPerformed + changeParam("enableGMG", GMGCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_GMGCheckBoxActionPerformed + + private void GMGLabelMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_GMGLabelMouseClicked + {//GEN-HEADEREND:event_GMGLabelMouseClicked + openFileContent(Configuration.GMG); + }//GEN-LAST:event_GMGLabelMouseClicked + + private void VuMeterLabelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_VuMeterLabelMouseClicked + openFileContent(Configuration.VuMeter); + }//GEN-LAST:event_VuMeterLabelMouseClicked + + private void VuMeterCheckBoxActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_VuMeterCheckBoxActionPerformed + changeParam("enableVuMeter", VuMeterCheckBox, Configuration.FrameProcessor); + }//GEN-LAST:event_VuMeterCheckBoxActionPerformed + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JCheckBox GMGCheckBox; + private javax.swing.JLabel GMGLabel; + private javax.swing.JCheckBox ROIdefinedCheckBox; + private javax.swing.JCheckBox T2FGMMUMCheckBox; + private javax.swing.JLabel T2FGMMUMLabel; + private javax.swing.JCheckBox T2FGMMUVCheckBox; + private javax.swing.JLabel T2FGMMUVLabel; + private javax.swing.JCheckBox T2FMRFUMCheckBox; + private javax.swing.JLabel T2FMRFUMLabel; + private javax.swing.JCheckBox T2FMRFUVCheckBox; + private javax.swing.JLabel T2FMRFUVLabel; + private javax.swing.JCheckBox VuMeterCheckBox; + private javax.swing.JLabel VuMeterLabel; + private javax.swing.JCheckBox adaptiveBackgroundLearningCheckBox; + private javax.swing.JLabel adaptiveBackgroundLearningLabel; + private javax.swing.JCheckBox adaptiveMedianCheckBox; + private javax.swing.JLabel adaptiveMedianLabel; + private javax.swing.JCheckBox adaptiveSOMCheckBox; + private javax.swing.JLabel adaptiveSOMLabel; + private javax.swing.JTabbedPane appTabbedPane; + private javax.swing.JCheckBox autoclearCheckBox; + private javax.swing.JLabel autoclearLabel; + private javax.swing.JCheckBox autoscrollCheckBox; + private javax.swing.JLabel autoscrollLabel; + private javax.swing.JTextField cameraIndexTextField; + private javax.swing.JButton checkAllButton; + private javax.swing.JButton clearButton; + private javax.swing.JTextField cmdTextField; + private javax.swing.JTextField compareAtTextField; + private javax.swing.JButton editButton; + private javax.swing.JCheckBox eigenbackgroundCheckBox; + private javax.swing.JLabel eigenbackgroundLabel; + private javax.swing.JTextPane fileContentTextPane; + private javax.swing.JLabel fileNameLabel; + private javax.swing.JCheckBox foregroundMaskAnalysisCheckBox; + private javax.swing.JLabel foregroundMaskAnalysisLabel; + private javax.swing.JCheckBox frameDifferenceCheckBox; + private javax.swing.JLabel frameDifferenceLabel; + private javax.swing.JCheckBox fuzzyAdaptiveSOMCheckBox; + private javax.swing.JLabel fuzzyAdaptiveSOMLabel; + private javax.swing.JCheckBox fuzzyChoquetIntegralCheckBox; + private javax.swing.JLabel fuzzyChoquetIntegralLabel; + private javax.swing.JCheckBox fuzzyGaussianCheckBox; + private javax.swing.JLabel fuzzyGaussianLabel; + private javax.swing.JCheckBox fuzzySugenoIntegralCheckBox; + private javax.swing.JLabel fuzzySugenoIntegralLabel; + private javax.swing.JCheckBox gaussianAverageCheckBox; + private javax.swing.JLabel gaussianAverageLabel; + private javax.swing.JCheckBox grimsonGMMCheckBox; + private javax.swing.JLabel grimsonGMMLabel; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel10; + private javax.swing.JLabel jLabel11; + private javax.swing.JLabel jLabel12; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel34; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JLabel jLabel7; + private javax.swing.JLabel jLabel8; + private javax.swing.JLabel jLabel9; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenu jMenu2; + private javax.swing.JMenu jMenu3; + private javax.swing.JMenu jMenu4; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuBar jMenuBar2; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel10; + private javax.swing.JPanel jPanel11; + private javax.swing.JPanel jPanel12; + private javax.swing.JPanel jPanel13; + private javax.swing.JPanel jPanel16; + private javax.swing.JPanel jPanel17; + private javax.swing.JPanel jPanel18; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JPanel jPanel4; + private javax.swing.JPanel jPanel6; + private javax.swing.JPanel jPanel7; + private javax.swing.JPanel jPanel9; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JToolBar.Separator jSeparator1; + private javax.swing.JToolBar.Separator jSeparator2; + private javax.swing.JToolBar.Separator jSeparator3; + private javax.swing.JToolBar.Separator jSeparator4; + private javax.swing.JToolBar.Separator jSeparator5; + private javax.swing.JToolBar.Separator jSeparator6; + private javax.swing.JToolBar jToolBar1; + private javax.swing.JToolBar jToolBar2; + private javax.swing.JComboBox loadConfigComboBox; + private javax.swing.JTextPane logTextPane; + private javax.swing.JScrollPane logTextScrollPane; + private javax.swing.JCheckBox mixtureOfGaussiansCheckBox; + private javax.swing.JLabel mixtureOfGaussiansLabel; + private javax.swing.JCheckBox multiLayerBGSCheckBox; + private javax.swing.JLabel multiLayerBGSLabel; + private javax.swing.JCheckBox openCVMoGV1CheckBox; + private javax.swing.JLabel openCVMoGV1Label; + private javax.swing.JCheckBox openCVMoGV2CheckBox; + private javax.swing.JLabel openCVMoGV2Label; + private javax.swing.JButton openConfigButton; + private javax.swing.JCheckBox preProcessorCheckBox; + private javax.swing.JLabel preProcessorLabel; + private javax.swing.JButton reloadButton; + private javax.swing.JTextField resizeFrameTextField; + private javax.swing.JButton returnButton; + private javax.swing.JButton returnButton2; + private javax.swing.JButton runButton; + private javax.swing.JButton runButton2; + private javax.swing.JButton runButton3; + private javax.swing.JButton runButton4; + private javax.swing.JButton saveButton; + private javax.swing.JButton setDatasetFolderButton; + private javax.swing.JButton setImageRefButton; + private javax.swing.JButton setInputFileButton; + private javax.swing.JButton setTestFileButton; + private javax.swing.JButton setTrainFileButton; + private javax.swing.JCheckBox showOutputCheckBox; + private javax.swing.JCheckBox simpleGaussianCheckBox; + private javax.swing.JLabel simpleGaussianLabel; + private javax.swing.JCheckBox staticFrameDifferenceCheckBox; + private javax.swing.JLabel staticFrameDifferenceLabel; + private javax.swing.JTextField stopVideoAtTextField; + private javax.swing.JCheckBox temporalMeanCheckBox; + private javax.swing.JLabel temporalMeanLabel; + private javax.swing.JCheckBox temporalMedianCheckBox; + private javax.swing.JLabel temporalMedianLabel; + private javax.swing.JComboBox tictocComboBox; + private javax.swing.JButton uncheckAllButton; + private javax.swing.JRadioButton useCameraRadioButton; + private javax.swing.JRadioButton useDatasetRadioButton; + private javax.swing.JCheckBox useForegroundMaskAnalysisCheckBox; + private javax.swing.JCheckBox useROICheckBox; + private javax.swing.JRadioButton useVideoRadioButton; + private javax.swing.JCheckBox verticalFlipCheckBox; + private javax.swing.JCheckBox weightedMovingMeanCheckBox; + private javax.swing.JLabel weightedMovingMeanLabel; + private javax.swing.JCheckBox weightedMovingVarianceCheckBox; + private javax.swing.JLabel weightedMovingVarianceLabel; + private javax.swing.JTextField x0ROITextField; + private javax.swing.JTextField x1ROITextField; + private javax.swing.JTextField y0ROITextField; + private javax.swing.JTextField y1ROITextField; + private javax.swing.JCheckBox zivkovicGMMCheckBox; + private javax.swing.JLabel zivkovicGMMLabel; + // End of variables declaration//GEN-END:variables +} diff --git a/java_gui/src/br/com/bgslibrary/resources/logo.jpg b/java_gui/src/br/com/bgslibrary/resources/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b14cadb7d6a0dedcbdbf535ae7f2f6adcc11cd6d Binary files /dev/null and b/java_gui/src/br/com/bgslibrary/resources/logo.jpg differ