[pktools] 76/375: support priorm imagein pkclassify_svm.cc (prepare for Markov Random Field)

Bas Couwenberg sebastic at xs4all.nl
Wed Dec 3 21:54:00 UTC 2014


This is an automated email from the git hooks/post-receive script.

sebastic-guest pushed a commit to branch upstream-master
in repository pktools.

commit b1f3b5b6d2556819cb34627071a9f5177849808e
Author: user <user at osgeolive.(none)>
Date:   Sat Mar 23 23:44:40 2013 +0100

    support priorm imagein pkclassify_svm.cc (prepare for Markov Random Field)
---
 src/algorithms/Makefile.am |  6 ++--
 src/algorithms/Makefile.in | 75 +++++++++++++++++++---------------------------
 src/apps/Makefile.am       |  1 +
 src/apps/Makefile.in       | 24 ++-------------
 src/apps/pkclassify_svm.cc | 59 ++++++++++++++++++++++++++++++++----
 5 files changed, 90 insertions(+), 75 deletions(-)

diff --git a/src/algorithms/Makefile.am b/src/algorithms/Makefile.am
index 960b18b..d9b35a9 100644
--- a/src/algorithms/Makefile.am
+++ b/src/algorithms/Makefile.am
@@ -7,7 +7,7 @@ AM_CXXFLAGS = -I$(top_srcdir)/src $(GDAL_CFLAGS) @AM_CXXFLAGS@
 
 # the program to build (the names of the final binaries)
 #do not want to install pktestoption
-noinst_PROGRAMS = pktestStat
+#noinst_PROGRAMS = pktestStat
 
 ###############################################################################
 # THE LIBRARIES TO BUILD
@@ -36,5 +36,5 @@ libalgorithms_la_SOURCES = $(libalgorithms_la_HEADERS) Egcs.cc Filter2d.cc Filte
 ###############################################################################
 
 # list of sources for the binaries
-pktestStat_SOURCES = pktestStat.cc
-pktestStat_LDADD = $(GSL_LIBS) -lgslwrap $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/imageclasses/libimageClasses.la -lgslwrap
+#pktestStat_SOURCES = pktestStat.cc
+#pktestStat_LDADD = $(GSL_LIBS) -lgslwrap $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/imageclasses/libimageClasses.la -lgslwrap
diff --git a/src/algorithms/Makefile.in b/src/algorithms/Makefile.in
index 4419b0d..618a0ac 100644
--- a/src/algorithms/Makefile.in
+++ b/src/algorithms/Makefile.in
@@ -16,7 +16,6 @@
 @SET_MAKE@
 
 
-
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
@@ -36,7 +35,6 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-noinst_PROGRAMS = pktestStat$(EXEEXT)
 @USE_FANN_TRUE at am__append_1 = myfann_cpp.h
 @USE_NLOPT_TRUE at am__append_2 = OptFactory.h
 subdir = src/algorithms
@@ -93,13 +91,6 @@ am__objects_2 = $(am__objects_1) $(am__objects_1)
 am_libalgorithms_la_OBJECTS = $(am__objects_2) Egcs.lo Filter2d.lo \
 	Filter.lo ConfusionMatrix.lo svm.lo
 libalgorithms_la_OBJECTS = $(am_libalgorithms_la_OBJECTS)
-PROGRAMS = $(noinst_PROGRAMS)
-am_pktestStat_OBJECTS = pktestStat.$(OBJEXT)
-pktestStat_OBJECTS = $(am_pktestStat_OBJECTS)
-am__DEPENDENCIES_1 =
-pktestStat_DEPENDENCIES = $(am__DEPENDENCIES_1) \
-	$(top_builddir)/src/algorithms/libalgorithms.la \
-	$(top_builddir)/src/imageclasses/libimageClasses.la
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
@@ -122,9 +113,8 @@ CCLD = $(CC)
 LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
 	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
 	$(LDFLAGS) -o $@
-SOURCES = $(libalgorithms_la_SOURCES) $(pktestStat_SOURCES)
-DIST_SOURCES = $(am__libalgorithms_la_SOURCES_DIST) \
-	$(pktestStat_SOURCES)
+SOURCES = $(libalgorithms_la_SOURCES)
+DIST_SOURCES = $(am__libalgorithms_la_SOURCES_DIST)
 am__libalgorithms_la_HEADERS_DIST = Egcs.h Filter2d.h Filter.h \
 	StatFactory.h ConfusionMatrix.h svm.h FeatureSelector.h \
 	myfann_cpp.h OptFactory.h
@@ -273,6 +263,14 @@ top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 
 ###############################################################################
+# THE PROGRAMS TO BUILD
+###############################################################################
+
+# the program to build (the names of the final binaries)
+#do not want to install pktestoption
+#noinst_PROGRAMS = pktestStat
+
+###############################################################################
 # THE LIBRARIES TO BUILD
 ###############################################################################
 
@@ -290,11 +288,6 @@ libalgorithms_la_HEADERS = Egcs.h Filter2d.h Filter.h StatFactory.h \
 
 # the sources to add to the library and to add to the source distribution
 libalgorithms_la_SOURCES = $(libalgorithms_la_HEADERS) Egcs.cc Filter2d.cc Filter.cc ConfusionMatrix.cc svm.cpp
-###############################################################################
-
-# list of sources for the binaries
-pktestStat_SOURCES = pktestStat.cc
-pktestStat_LDADD = $(GSL_LIBS) -lgslwrap $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/imageclasses/libimageClasses.la -lgslwrap
 all: all-am
 
 .SUFFIXES:
@@ -363,18 +356,6 @@ clean-libLTLIBRARIES:
 libalgorithms.la: $(libalgorithms_la_OBJECTS) $(libalgorithms_la_DEPENDENCIES) $(EXTRA_libalgorithms_la_DEPENDENCIES) 
 	$(CXXLINK) -rpath $(libdir) $(libalgorithms_la_OBJECTS) $(libalgorithms_la_LIBADD) $(LIBS)
 
-clean-noinstPROGRAMS:
-	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
-	echo " rm -f" $$list; \
-	rm -f $$list || exit $$?; \
-	test -n "$(EXEEXT)" || exit 0; \
-	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
-	echo " rm -f" $$list; \
-	rm -f $$list
-pktestStat$(EXEEXT): $(pktestStat_OBJECTS) $(pktestStat_DEPENDENCIES) $(EXTRA_pktestStat_DEPENDENCIES) 
-	@rm -f pktestStat$(EXEEXT)
-	$(CXXLINK) $(pktestStat_OBJECTS) $(pktestStat_LDADD) $(LIBS)
-
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
 
@@ -385,7 +366,6 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Egcs.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Filter.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Filter2d.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/pktestStat.Po at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/svm.Plo at am__quote@
 
 .cc.o:
@@ -538,7 +518,7 @@ distdir: $(DISTFILES)
 	done
 check-am: all-am
 check: check-am
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(HEADERS)
+all-am: Makefile $(LTLIBRARIES) $(HEADERS)
 installdirs:
 	for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(libalgorithms_ladir)"; do \
 	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
@@ -576,7 +556,7 @@ maintainer-clean-generic:
 clean: clean-am
 
 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
-	clean-noinstPROGRAMS mostlyclean-am
+	mostlyclean-am
 
 distclean: distclean-am
 	-rm -rf ./$(DEPDIR)
@@ -648,21 +628,26 @@ uninstall-am: uninstall-libLTLIBRARIES \
 .MAKE: install-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-	clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS ctags \
-	distclean distclean-compile distclean-generic \
-	distclean-libtool distclean-tags distdir dvi dvi-am html \
-	html-am info info-am install install-am install-data \
-	install-data-am install-dvi install-dvi-am install-exec \
-	install-exec-am install-html install-html-am install-info \
-	install-info-am install-libLTLIBRARIES \
-	install-libalgorithms_laHEADERS install-man install-pdf \
-	install-pdf-am install-ps install-ps-am install-strip \
-	installcheck installcheck-am installdirs maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-compile \
-	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-	tags uninstall uninstall-am uninstall-libLTLIBRARIES \
+	clean-libLTLIBRARIES clean-libtool ctags distclean \
+	distclean-compile distclean-generic distclean-libtool \
+	distclean-tags distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-dvi \
+	install-dvi-am install-exec install-exec-am install-html \
+	install-html-am install-info install-info-am \
+	install-libLTLIBRARIES install-libalgorithms_laHEADERS \
+	install-man install-pdf install-pdf-am install-ps \
+	install-ps-am install-strip installcheck installcheck-am \
+	installdirs maintainer-clean maintainer-clean-generic \
+	mostlyclean mostlyclean-compile mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+	uninstall-am uninstall-libLTLIBRARIES \
 	uninstall-libalgorithms_laHEADERS
 
+###############################################################################
+
+# list of sources for the binaries
+#pktestStat_SOURCES = pktestStat.cc
+#pktestStat_LDADD = $(GSL_LIBS) -lgslwrap $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/imageclasses/libimageClasses.la -lgslwrap
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/src/apps/Makefile.am b/src/apps/Makefile.am
index 5bedcb8..185e38a 100644
--- a/src/apps/Makefile.am
+++ b/src/apps/Makefile.am
@@ -1,6 +1,7 @@
 AM_CXXFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/base $(GDAL_CFLAGS) @AM_CXXFLAGS@
 AM_LDFLAGS = $(GDAL_LDFLAGS) $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/imageclasses/libimageClasses.la @AM_LDFLAGS@
 LDADD = $(GDAL_LDFLAGS) $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/models/libmodels.la $(top_builddir)/src/models/libprospect.la $(top_builddir)/src/imageclasses/libimageClasses.la
+#LDADD = $(GDAL_LDFLAGS) $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/models/libmodels.la $(top_builddir)/src/imageclasses/libimageClasses.la
 ###############################################################################
 # THE PROGRAMS TO BUILD
 ###############################################################################
diff --git a/src/apps/Makefile.in b/src/apps/Makefile.in
index d056e33..acc1b76 100644
--- a/src/apps/Makefile.in
+++ b/src/apps/Makefile.in
@@ -76,7 +76,6 @@ am__DEPENDENCIES_1 =
 pkascii2img_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkascii2ogr_OBJECTS = pkascii2ogr.$(OBJEXT)
 pkascii2ogr_OBJECTS = $(am_pkascii2ogr_OBJECTS)
@@ -84,7 +83,6 @@ pkascii2ogr_LDADD = $(LDADD)
 pkascii2ogr_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am__pkclassify_nn_SOURCES_DIST =  \
 	$(top_srcdir)/src/algorithms/myfann_cpp.h pkclassify_nn.h \
@@ -106,7 +104,6 @@ pkclassify_svm_LDADD = $(LDADD)
 pkclassify_svm_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkcreatect_OBJECTS = pkcreatect.$(OBJEXT)
 pkcreatect_OBJECTS = $(am_pkcreatect_OBJECTS)
@@ -114,7 +111,6 @@ pkcreatect_LDADD = $(LDADD)
 pkcreatect_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkcrop_OBJECTS = pkcrop.$(OBJEXT)
 pkcrop_OBJECTS = $(am_pkcrop_OBJECTS)
@@ -122,7 +118,6 @@ pkcrop_LDADD = $(LDADD)
 pkcrop_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkdiff_OBJECTS = pkdiff.$(OBJEXT)
 pkdiff_OBJECTS = $(am_pkdiff_OBJECTS)
@@ -130,7 +125,6 @@ pkdiff_LDADD = $(LDADD)
 pkdiff_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkdsm2shadow_OBJECTS = pkdsm2shadow.$(OBJEXT)
 pkdsm2shadow_OBJECTS = $(am_pkdsm2shadow_OBJECTS)
@@ -138,7 +132,6 @@ pkdsm2shadow_LDADD = $(LDADD)
 pkdsm2shadow_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkdumpimg_OBJECTS = pkdumpimg.$(OBJEXT)
 pkdumpimg_OBJECTS = $(am_pkdumpimg_OBJECTS)
@@ -146,7 +139,6 @@ pkdumpimg_LDADD = $(LDADD)
 pkdumpimg_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkdumpogr_OBJECTS = pkdumpogr.$(OBJEXT)
 pkdumpogr_OBJECTS = $(am_pkdumpogr_OBJECTS)
@@ -154,7 +146,6 @@ pkdumpogr_LDADD = $(LDADD)
 pkdumpogr_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkeditogr_OBJECTS = pkeditogr.$(OBJEXT)
 pkeditogr_OBJECTS = $(am_pkeditogr_OBJECTS)
@@ -162,7 +153,6 @@ pkeditogr_LDADD = $(LDADD)
 pkeditogr_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkegcs_OBJECTS = pkegcs.$(OBJEXT)
 pkegcs_OBJECTS = $(am_pkegcs_OBJECTS)
@@ -173,7 +163,6 @@ pkextract_LDADD = $(LDADD)
 pkextract_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkfillnodata_OBJECTS = pkfillnodata.$(OBJEXT)
 pkfillnodata_OBJECTS = $(am_pkfillnodata_OBJECTS)
@@ -181,7 +170,6 @@ pkfillnodata_LDADD = $(LDADD)
 pkfillnodata_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkfilter_OBJECTS = pkfilter.$(OBJEXT)
 pkfilter_OBJECTS = $(am_pkfilter_OBJECTS)
@@ -205,7 +193,6 @@ pkgetmask_LDADD = $(LDADD)
 pkgetmask_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkinfo_OBJECTS = pkinfo.$(OBJEXT)
 pkinfo_OBJECTS = $(am_pkinfo_OBJECTS)
@@ -213,7 +200,6 @@ pkinfo_LDADD = $(LDADD)
 pkinfo_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am__pklas2img_SOURCES_DIST = pklas2img.cc
 @USE_LAS_TRUE at am_pklas2img_OBJECTS = pklas2img.$(OBJEXT)
@@ -225,7 +211,6 @@ pkmosaic_LDADD = $(LDADD)
 pkmosaic_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkndvi_OBJECTS = pkndvi.$(OBJEXT)
 pkndvi_OBJECTS = $(am_pkndvi_OBJECTS)
@@ -233,7 +218,6 @@ pkndvi_LDADD = $(LDADD)
 pkndvi_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am__pkopt_svm_SOURCES_DIST =  \
 	$(top_srcdir)/src/algorithms/OptFactory.h pkclassify_nn.h \
@@ -248,7 +232,6 @@ pkpolygonize_LDADD = $(LDADD)
 pkpolygonize_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkreclass_OBJECTS = pkreclass.$(OBJEXT)
 pkreclass_OBJECTS = $(am_pkreclass_OBJECTS)
@@ -256,7 +239,6 @@ pkreclass_LDADD = $(LDADD)
 pkreclass_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am__pksensormodel_SOURCES_DIST =  \
 	$(top_srcdir)/src/models/SensorModel.h pksensormodel.h \
@@ -271,7 +253,6 @@ pksetmask_LDADD = $(LDADD)
 pksetmask_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pksieve_OBJECTS = pksieve.$(OBJEXT)
 pksieve_OBJECTS = $(am_pksieve_OBJECTS)
@@ -279,7 +260,6 @@ pksieve_LDADD = $(LDADD)
 pksieve_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 am_pkstat_OBJECTS = pkstat.$(OBJEXT)
 pkstat_OBJECTS = $(am_pkstat_OBJECTS)
@@ -290,7 +270,6 @@ pkstatogr_LDADD = $(LDADD)
 pkstatogr_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 	$(top_builddir)/src/algorithms/libalgorithms.la \
 	$(top_builddir)/src/models/libmodels.la \
-	$(top_builddir)/src/models/libprospect.la \
 	$(top_builddir)/src/imageclasses/libimageClasses.la
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
@@ -481,7 +460,8 @@ target_alias = @target_alias@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-LDADD = $(GDAL_LDFLAGS) $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/models/libmodels.la $(top_builddir)/src/models/libprospect.la $(top_builddir)/src/imageclasses/libimageClasses.la
+#LDADD = $(GDAL_LDFLAGS) $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/models/libmodels.la $(top_builddir)/src/models/libprospect.la $(top_builddir)/src/imageclasses/libimageClasses.la
+LDADD = $(GDAL_LDFLAGS) $(top_builddir)/src/algorithms/libalgorithms.la $(top_builddir)/src/models/libmodels.la $(top_builddir)/src/imageclasses/libimageClasses.la
 @USE_FANN_TRUE at pkclassify_nn_SOURCES = $(top_srcdir)/src/algorithms/myfann_cpp.h pkclassify_nn.h pkclassify_nn.cc
 @USE_FANN_TRUE at pkclassify_nn_CXXFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/base $(FANN_CFLAGS) -I$(top_srcdir)/src/algorithms $(AM_CXXFLAGS)
 @USE_FANN_TRUE at pkclassify_nn_LDADD = $(FANN_LIBS) $(FANN_CFLAGS) $(AM_LDFLAGS)
diff --git a/src/apps/pkclassify_svm.cc b/src/apps/pkclassify_svm.cc
index c77ef38..fbcd7fb 100644
--- a/src/apps/pkclassify_svm.cc
+++ b/src/apps/pkclassify_svm.cc
@@ -93,6 +93,7 @@ int main(int argc, char *argv[])
   Optionpk<double> offset_opt("\0", "offset", "offset value for each spectral band input features: refl[band]=(DN[band]-offset[band])/scale[band]", 0.0);
   Optionpk<double> scale_opt("\0", "scale", "scale value for each spectral band input features: refl=(DN[band]-offset[band])/scale[band] (use 0 if scale min and max in each band to -1.0 and 1.0)", 0.0);
   Optionpk<double> priors_opt("p", "prior", "prior probabilities for each class (e.g., -p 0.3 -p 0.3 -p 0.2 )", 0.0); 
+  Optionpk<string> priorimg_opt("pim", "priorimg", "prior probability image (multi-band img with band for each class"); 
   Optionpk<unsigned short> cv_opt("cv", "cv", "n-fold cross validation mode",0);
   Optionpk<unsigned short> svm_type_opt("svmt", "svmtype", "type of SVM (0: C-SVC, 1: nu-SVC, 2: one-class SVM, 3: epsilon-SVR,	4: nu-SVR)",0);
   Optionpk<unsigned short> kernel_type_opt("kt", "kerneltype", "type of kernel function (0: linear: u'*v, 1: polynomial: (gamma*u'*v + coef0)^degree, 2: radial basis function: exp(-gamma*(u-v)^2), 3: sigmoid: tanh(gamma*u'*v + coef0), 4: precomputed kernel (kernel values in training_set_file)",2);
@@ -139,6 +140,7 @@ int main(int argc, char *argv[])
     offset_opt.retrieveOption(argc,argv);
     scale_opt.retrieveOption(argc,argv);
     priors_opt.retrieveOption(argc,argv);
+    priorimg_opt.retrieveOption(argc,argv);
     svm_type_opt.retrieveOption(argc,argv);
     kernel_type_opt.retrieveOption(argc,argv);
     kernel_degree_opt.retrieveOption(argc,argv);
@@ -237,7 +239,6 @@ int main(int argc, char *argv[])
       priors[iclass]/=normPrior;
   }
 
-
   //sort bands
   if(band_opt.size())
     std::sort(band_opt.begin(),band_opt.end());
@@ -410,10 +411,12 @@ int main(int argc, char *argv[])
       if(verbose_opt[0]>=1){
         std::cout << "number of bands: " << nband << std::endl;
         std::cout << "number of classes: " << nclass << std::endl;
-        std::cout << "priors:";
-        for(short iclass=0;iclass<nclass;++iclass)
-          std::cout << " " << priors[iclass];
-        std::cout << std::endl;
+	if(priorimg_opt.empty()){
+	  std::cout << "priors:";
+	  for(short iclass=0;iclass<nclass;++iclass)
+	    std::cout << " " << priors[iclass];
+	  std::cout << std::endl;
+	}
       }
       map<string,Vector2d<float> >::iterator mapit=trainingMap.begin();
       while(mapit!=trainingMap.end()){
@@ -594,6 +597,28 @@ int main(int argc, char *argv[])
         exit(1);
       }
     }
+    ImgReaderGdal priorReader;
+    if(priorimg_opt.size()){
+      try{
+	if(verbose_opt[0]>=1)
+          std::cout << "opening prior image " << priorimg_opt[0] << std::endl;
+        priorReader.open(priorimg_opt[0]);
+        assert(priorReader.nrOfCol()==testImage.nrOfCol());
+        assert(priorReader.nrOfRow()==testImage.nrOfRow());
+      }
+      catch(string error){
+        cerr << error << std::endl;
+        exit(2);
+      }
+      catch(...){
+        cerr << "error catched" << std::endl;
+        exit(1);
+      }
+    }
+
+    if(priorimg_opt.size()){
+      //hiero
+    }
     int nrow=testImage.nrOfRow();
     int ncol=testImage.nrOfCol();
     if(option_opt.findSubstring("INTERLEAVE=")==option_opt.end()){
@@ -646,6 +671,9 @@ int main(int argc, char *argv[])
       vector<short> lineMask;
       if(mask_opt.size())
         lineMask.resize(maskReader.nrOfCol());
+      Vector2d<float> linePrior;
+      if(priorimg_opt.size())
+	 linePrior.resize(nclass,ncol);//prior prob for each class
       Vector2d<float> hpixel(ncol);
       Vector2d<float> prOut(nclass,ncol);//posterior prob for each class
       vector<float> entropy(ncol);
@@ -707,6 +735,21 @@ int main(int argc, char *argv[])
           exit(3);
         }
       }
+      //read prior
+      if(priorimg_opt.size()){
+        try{
+	  for(int iclass=0;iclass<nclass;++iclass)
+	    priorReader.readData(linePrior[iclass],GDT_Float32,iline,iclass);
+        }
+        catch(string theError){
+          cerr << "Error reading " << priorimg_opt[0] << ": " << theError << std::endl;
+          exit(3);
+        }
+        catch(...){
+          cerr << "error catched" << std::endl;
+          exit(3);
+        }
+      }
     
       //process per pixel
       for(int icol=0;icol<ncol;++icol){
@@ -831,6 +874,8 @@ int main(int argc, char *argv[])
             classBag[ibag][icol]=0;
           }
           for(short iclass=0;iclass<nclass;++iclass){
+	    if(priorimg_opt.size())
+	      priors[iclass]=linePrior[iclass][icol];
             switch(comb_opt[0]){
             default:
             case(0)://sum rule
@@ -953,6 +998,10 @@ int main(int argc, char *argv[])
     }
 
     testImage.close();
+    if(mask_opt.size())
+      maskReader.close();
+    if(priorimg_opt.size())
+      priorReader.close();
     if(prob_opt.size())
       probImage.close();
     if(entropy_opt.size())

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/pktools.git



More information about the Pkg-grass-devel mailing list