TargetAnalyzer splash screen

Current Version 0.1.2



TargetAnalyzer is a tool for the automatic analyzation of hits on targets. The intended audience are hobbyist sport shooters. The analyzation of targets includes the automatic detection of hits on an (scanned) image of a target and the calculation of the resulting scores as well as applying statistical methods to the retrieved data for further analysis.
TargetAnalyzer is currently available for Linux (x86, x86_64) and Windows (x86 also known as win32). A version for Mac OS X is planned.

Screen Shots

Version 0.1.0 showing all views available.
Version 0.1.0 showing all views available.
Version 0.1.0 color selection.
Version 0.1.0 color selection.
Version 0.1.0 data selection.
Version 0.1.0 data selection.
Version 0.0.4 introducing computation and display of group size and position as well as options to select what data to display.
Version 0.0.4 with multiple target views + gun statistic view
Version 0.0.3 with multiple target views + gun statistic view:
Version 0.0.3 with multiple target views + gun statistic view
Version 0.0.3 gun statistic view:
Version 0.0.3 gun statistic view

Changes / History

Jan 04. 2009

Bug fix release version 0.1.2.
Unfortunately another error was introduced while implementing the deletion functionality.
The error is that image files and directories were not deleted when deleting the corresponding entries.
This is fixed in this very quick bug fix release version 0.1.2.
I'm sorry for the inconvenience.

  - Fixed bug that image files for targets and directories for guns were not deleted on deletion of entries. 
    This fix also includes error handling if files or directories are not writable. 

Jan 04. 2009

Version 0.1.1 includes improvements in the ring calculation/detection algorithm as well as the addition of functionalities to delete targets and images (via right click menu).
For calibrating/adjusting settings for image analysis an graphical preview of the produced results is introduced.

  - Improved the algorithm for detecting and calculating rings on targets.
  - Added Shell to display calibration result in.
  - Added functionality to delete targets.
  - Added functionality to delete guns.
  - Added confirmation dialogs for deletion.

Jan 02. 2009

Version 0.1.0 introduces quite a few new features hence the jump in the version number to 0.1.0 as this makes TargetAnalyzer much more usable in practice.
Key features include the now scrollable images in the TargetView (including other features like auto centering), the addition of a TargetDataView for textual output of data about targets and the further improved display of statistics in GunStatisticsView (including preference settings to choose what data to display and the color of data).
For more details see the ChangeLog below.

  - Added option to select where the group boundaries should touch the most 
    outer hits (current options are: center[default], inner and outer).
  - Made view of target image scrollable.
  - Image in target view automatically focuses on center on resize.
  - Target view now displays the "id" of the target instead of just none saying "TargetView".
  - Removed unused dock and changed default size.
  - Added TargetDataView for textual display of data about targets.
  - Deleted unused test class SWTMain.
  - Added "Exit" to "File" menu.
  - Added description to HitGroupTangency enumeration.
  - Added preference settings to choose where to initially place the focus for target 
  	images shown in TargetView when images do not fit to available area.
  - Added option to switch which data to display in TargetDataView.
  - Changed behavior of GunStatisticsView.
    Now the data which is displayed is selected via preferences.
  - Added preferences settings for choosing the color of the data displayed in GunStatisticsView.

Dec 06. 2008

Version 0.0.6 released.
This release adds the possibitlity to set preferences used during analyzation of targets. This includes the option to calibrate the detection algorithm for target images which will speed up the processing and/or make the processing more reliable.

  - Added settings menu.
  - Added preferences dialog.
  - Added preferences page for settings needed by image analyzation algorithm.
  - Added option for calibrating the upper threshold value for images.

Nov 29 2008

Version 0.0.5 released.
This release consists mainly of a fix for a major bug which prevented the import/analysis of images with differing contrast and brightness values.

The details are as follows:

Fixed several errors when creating new targets from images.
The new algorithm for analyzing images is more robust.
If no good results can be achieved an information message will be displayed instead of dumping exceptions to console.
Added an information message when statistics from menu is clicked but no gun is selected.

  - Open image to calculate rings from in RingCalculator itself.
    Instead of passing the image the filename is now passed via the constructor.
  - Made calculation of ring radii more robust.
    I.e. it is tried to figure out the correct threshold to use when preparing 
    picture for calculation self if default value doesn't produce good results.
    This currently includes quite some nasty hacks.
  - Implement a fail safe abortion condition in the method for calculating ring 
    radii so no infinite loop will be produced.
  - If errors were encountered the user will be informed about this.
  - Display an information message when statistics is clicked from the menu but
    no gun is selected. 

Nov 16 2008

Version 0.0.4 released.
Fourth release of TargetAnalyzer introducing further features like

  - First implementation of computation of statistical data.
    - Here data about groups of hits is calculated.
  - Display additional data in TargetView.
  - Display additional data in GunStatisticsView.
  - Added right click menu to GunTreeView.
    - Currently only actions on selected gun are supported.
  - Added tool bar to GunStatisticsView.
    - Buttons toggle the display of data series.
  - Added tool bar to TargetView.
    - Buttons to toggle what information is displayed.
  - Added progress bar to AddTargetWizard.

Nov 08 2008

Version 0.0.3 released.
The third release of TargetAnalyzer introducing a first impression of how statistical representation of data could look like. As with this release the place where the data is stored is no more dependent on from where TargetAnalyzer is called. All data (database and image files) will now be stored under the users home directory in a subdirectory called "targetanalyzer".
As the place where data is stored has changed the old data can not be reused directly. If an import function for such older data is needed please E-Mail me. Since this application is in a very early stage of development no importing function was written implicitly. As the development proceeds there will of course be taken care of compatibility between different versions. Thats also the reason to introduce such an important change in a very early phase of development as this reduces the efforts needed to adapt to such a change compared to introducing this change in later phases.

- First implementation for displying statistics with JFreeChart.
  - Currently multiple targets per day can be displayed but only up to 12
    lead to sane results in the display.
    This must be fixed in later versions.
- Fixed bug 2216817 "New target entries don't get correct dateIds".
- Fixed bug 2216813 "Target entries in GunView are not sorted".
- Set osgi.instance.area to @user.home/targetanalyzer.
- Changed path for database to be stored in instance area.
- Copy / Archive target images in instance area.
- Made pathnames platform independent.

Nov 01 2008

Version 0.0.2 released
Second release of TargetAnalyzer. This release adds a first realization of persistence via hibernate (i.e. the computed data is now stored and reloaded on next start). Fixed some issues with respect to cross platform export. Currently i still can't test properly under windows because of the lack of a running windows system. I used the windows systems at the university for this purpose so far. Anyways, i'll setup a virtual machine for testing with windows asap.

Initial Version

This is the first version of the web presence for the TargetAnalyzer project hosted on As the development proceeds this web presence will be enhanced and updated as well.

Software Requirements

For running TargetAnalyzer Java Version 1.6 is needed.


For downloading TargetAnalyzer please see the sourceforge project page.


Sample scans of images being processed with TargetAnalyzer are currently available via the SVN repository on the project page.


Some functionality of TargetAnalyzer is based on or uses already existing freely (publicly) available code. This already existing code is not licensed under the terms of the GPL but remains under the terms it was originally released under. All code which is newly written in the scope of TargetAnalyzer by the TargetAnalyzer developers will be released under the terms of the GPLv2. For more details please see the following sections.

TargetAnalyzer Code

Copyright 2008-2009 Ruediger Gad

TargetAnalyzer 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 2 of the License, or
(at your option) any later version.
TargetAnalyzer is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with TargetAnalyzer.  If not, see

Non GPL licensed code

Some of the functionality this project uses at the time of writing is based on freely (publicly) available source code 
not licensed under the terms of the GPL.
The parts of this project based on such freely (publicly) available source code not released under the terms of the GPL 
are not licensed by the terms of the GPL but are instead released under the terms of the originating code.
These parts are namely as the time of writing "targetanalyzer.core.analyze.createTemplate.*" and "targetanalyzer.core.analyze.metadata.*".
Please see the README.txt files in the package directories for details.
All other parts not explicitly listed here are released under the terms of the GPL.


Feel free to contact me under the following e-mail address You may also use the other means of communication which are offered via the sourceforge project site but email is prefered.

Valid CSS! Valid HTML 4.01 Strict This site has been created with Vim Get TargetAnalyzer at Fast, secure and Free Open Source software downloads