Title:
Digital target spotting system
Kind Code:
A1


Abstract:
A digital target spotting system for scoring projectile shots on a target. The system has a computer with a display, a digital image capturing device (e.g. digital camera or camcorder used with an optical spotting scope) adapted for capturing digital images of a target, an event sensor that detects when a projectile is shot at the target, an anemometer for detecting wind speed and detecting wind direction and a chronograph for detecting the projectile speed of a projectile shot at the target. A communication hub acts as a communication hub between the computer and the input sensor devices. Computer software loaded on the computer processes digital images from the digital image capturing device and extracting hits on the target image to determine where on the target hits are made and scores a shooter's performance.



Inventors:
Stender, Robert H. (Chatsworth, CA, US)
Skopec, Eric (Chatsworth, CA, US)
Application Number:
10/282486
Publication Date:
05/01/2003
Filing Date:
10/28/2002
Assignee:
STENDER H. ROBERT
SKOPEC ERIC
Primary Class:
Other Classes:
434/19, 273/348
International Classes:
F41G3/26; F41J5/10; (IPC1-7): F41G3/26
View Patent Images:



Primary Examiner:
CHENG, JOE H
Attorney, Agent or Firm:
Lewis Roca Rothgerber Christie LLP (Glendale, CA, US)
Claims:

What is claimed is:



1. A digital target spotting system for scoring projectile shots on a target, comprising: a digital image capturing device adapted for capturing digital images of a target; a computer with a display; computer software for the computer for processing images from the digital image capturing device and extracting hits on the target image to determine where on the target hits are made and for scoring a shooting session.

2. The digital target spotting system of claim 1, further comprising an event sensor that alerts the system when a projectile is shot at the target, which event sensor instructs the computer software to capture and process the digital image.

3. The digital target spotting system of claim 1, further comprising an optical spotting scope to which the digital image capturing device is attached.

4. The digital target spotting system of claim 1, wherein the computer software further comprises a magnification feature.

5. The digital target spotting system of claim 3, wherein the digital image capturing device is selected from one of a still digital camera and a digital camcorder.

6. The digital target spotting system of claim 1, further comprising an anemometer for detecting wind speed and direction, wherein the detected wind speed and direction are collected by the computer software.

7. The digital target spotting system of claim 1, further comprising a chronograph for detecting the projectile speed of a projectile shot at the target, wherein the detected projectile speed is collected by the computer software.

8. The digital target spotting system of claim 1, further comprising a communication hub which provides a communication channel between the digital image capturing device, an event sensor that determines when a projectile is shot at the target, and one or both of an anemometer for detecting wind speed and detecting wind direction and a chronograph for detecting the projectile speed of a projectile shot at the target, and the computer.

9. The digital target spotting system of claim 1, wherein the computer software will process data captured from digital image capturing device, and data inputted by a user, such as the range of the target, information concerning the projectile and a firearms used, and graphically display such images, and automatically calculate shot statistics during a shooting session.

10. A digital target spotting system for scoring projectile shots on a target, comprising: a computer with a display; a digital image capturing device adapted for capturing digital images of a target; an event sensor that detects when a projectile is shot at the target; and computer software for processing digital images from the digital image capturing device and extracting hits on the target image to determine where on the target hits are made and for scoring a shooter's performance.

11. The digital target spotting system of claim 10, further comprising a communication hub which provides a communication channel between the digital image capturing device, the event sensor, and one or both of an anemometer for detecting wind speed and detecting wind direction and a chronograph for detecting the projectile speed of a projectile shot at the target, and the computer.

12. The digital target spotting system of claim 10, further comprising an optical spotting scope to which the digital image capturing device is attached.

13. The digital target spotting system of claim 10, wherein the digital image capturing device is selected from one of a still digital camera and a digital camcorder.

14. The digital target spotting system of claim 10, further comprising one or more of an anemometer for detecting wind speed and direction, wherein the detected wind speed and direction are collected by the computer software, and a chronograph for detecting the projectile speed of a projectile shot at the target, wherein the detected projectile speed is collected by the computer software.

15. The digital target spotting system of claim 10, wherein the computer software will process data captured from digital image capturing device, and data inputted by a user, such as the range of the target, information concerning the projectile and a firearms used, and graphically display such images, and automatically calculate shot statics during a shooting session.

16. Computer software for digital target spotting for scoring projectile shots on a target, which software performs the following steps: (a) taking an initial digital image of the target and storing the starting pixel values of the image; (b) detecting that a shot has been fired at the target; (c) taking a new digital image of the target and comparing the new digital image with the initial digital image on a pixel by pixel basis and from differences in the pixels' characteristics, determining the position where a projectile hit the target; (d) storing the projectile hit position; (e) repeating step (b) and taking a further digital image of the target and comparing it to the prior digital image of the target on a pixel by pixel basis, and from differences in the pixels' characteristics, determining a new projectile hit position on the target; (f) storing the new projectile hit position; (g) repeating steps (e) and (f) until no more projectile hits are detected or a user has completed a shooting session; and (h) processing the projectile hit positions to provide a session score.

17. The computer software of claim 16, where the computer software is adapted to process data comprising one or more of wind speed and direction, firearm type, projectile speed, projectile type, shooter identification, session date and time, and range to target and output such data in a visually displayable manner.

18. The computer software of claim 16, where the computer software outputs statistical reports concerning a shooter's performance.

19. The computer software of claim 16, wherein the software stores images of the target with hits formed thereon, and wherein the software will distinguish the most recent projectile hit on the image of the target from prior hits on the target.

20. The computer software of claim 16, wherein the software stores images of the target into multiple sessions, which images and data can be shared with other users, and wherein sessions can be saved or discarded as desired.

Description:

CROSS-REFERENCE TO RELATED APPLICATION(S)

[0001] This application claims priority to provisional patent application No. 60/341,106 entitled “DIGITAL TARGET SPOTTING SYSTEM” filed on Oct. 29, 2001.

BACKGROUND OF THE INVENTION

[0002] This invention is in the field of spotting systems for target firearm practice, and more particularly is related to a digital target spotting system that acquires, stores and processes gunshots made to a target. The system would work equally well with pellet and BB guns and other firearms that make a hole or other visible and differentiating mark on a target.

[0003] There are many gun enthusiasts, law enforcement professionals, security and military personnel in the U.S. and around the world who want and/or are required to develop and demonstrate proficiency in using firearms and to develop a high degree of accuracy. At target ranges, a paper or other target is typically placed at a desired distance away from the shooter, who then takes his or her shots, and then later can either retrieve the target and/or record the spots where hits were made on the target. In the field of competitive shooting, numerous important variables may influence the success of the target practice session. First, the firearm and ammunition are important, since the firearm and the ammunition are factors in the projectile velocity and its flight. The speed and direction of any wind at a target range are other important factors. A further important factor can be the time interval between shots.

[0004] Accomplished shooters wish to achieve multiple shot groupings that are in a 2.5 cm (1 inch) diameter or less from a distance of 6.4 meters (7 yards) to as far as 914 meters (1000 yards.) This degree of accuracy is accomplished by controlling and being aware of critical variables including firearm characteristics, the aiming point, the wind speed and direction, and the ammunition characteristics that affect the projectile velocity and flight.

[0005] To achieve proficiency in shooting, it is beneficial to continuously monitor environmental variables and shot impacts on the target. To do this, shooters currently employ high magnification optical spotting scopes to view the distant target, wind flags and socks to find out the wind direction, chronographs to determine the projectile velocity, and manual records of shooting sessions, typically first recorded in notebooks, scratch pads, note cards and archives of used targets. The use of these methods is cumbersome, inconvenient and error prone, and does not lead to any easy method to analyze data. In particular, use of optical spotting scopes requires shooters to break their shooting position to peer into an eyepiece or rely on descriptions provided by others who act as spotters. Use of optical spotting scopes is also of little utility when several shots have already impacted a particular area of a target, which makes it difficult to distinguish between the impact of current and prior shots. This necessitates frequent target replacement. In cases where wind flags and socks are used, these display simply approximations of the true wind speed and direction, and require considerable skill to interpret properly, and furthermore do not produce direct, recordable data. While chronographs may themselves provide accurate data regarding projectile velocity, they are not otherwise integrated into any spotting system and do not correlate shot impact with key loading data such as the projectile weight and size and powder charges. Furthermore, archives of previously shot targets are inconvenient to store and retrieve. They are also inefficient training aids because manually comparing results of one shooting session with one or more prior sessions requires accurate labeling of each target and physically distributing copies of same for comparison.

[0006] The capacity to integrate these disparate components does not currently exist, makes any kind of data analysis difficult, and does not lend itself well to sharing with others.

SUMMARY OF THE INVENTION

[0007] The invention is a digital target spotting system that provides a digital image capturing device, such as a digital camera fitted on a spotting scope adapter or an optical zoom lens, an event sensor that instructs the digital image capturing device to capture a digital image of the target, and a computer which processes the digital images captured of the target and graphically displays the captured images and records and stores and processes the data. Optionally, the digital target spotting system can further include an anemometer to detect wind direction and wind speed, and a chronograph to measure the projectile's speed. With systems outfitted with these optional features, the computer will also preferably have a communication hub with inputs for these devices, and have data collected entered into the database. The computer has input means to permit a user to manually enter data not collected from the sensors, such as user identity, information concerning the firearm used and information including the projectile type and weight, case manufacturer and powder charge.

[0008] The digital target spotting system for scoring projectile impacts on a target of the invention includes a digital image capturing device adapted for capturing digital images of a target, a computer with a display, and computer software for the computer for processing images from the digital image capturing device and extracting hits on the target image to determine where on the target hits are made.

[0009] The digital target spotting system for scoring projectile shots on a target can also preferably include an event sensor that detects when a projectile is shot at the target, an optical spotting scope to which the digital image capturing device is attached, an anemometer for detecting wind speed and direction, a chronograph for detecting the velocity of a projectile shot at the target, and a communication hub that can facilitate communication between the computer and the digital image capturing device, the event sensor, the anemometer and the chronograph.

[0010] The invention further provides computer software for use on a computer to which is connected a digital sensor connected to an optical spotting scope, or a digital camera with sufficient magnification, and an event sensor that instructs the digital image capturing device to capture a digital image of the target. The software can optionally be adapted to process wind direction and wind speed data from an anemometer connected to the computer and/or can optionally be adapted to process projectile speed data collected from a chronograph connected to the computer.

[0011] More particularly, the computer software performs the following steps: (a) taking an initial digital image of the target and storing the starting pixel values of the image; (b) detecting that a shot has been fired at the target; (c) taking a new digital image of the target and comparing the new digital image with the initial digital image on a pixel by pixel basis and from differences in the pixels' characteristics, determining the position where a projectile hit the target; (d) storing the projectile hit position; (e) repeating step (b) and taking a further digital image of the target and comparing it with the prior digital image of the target on a pixel by pixel basis, and from differences in the pixels' characteristics, determining a new projectile hit position on the target; (f) storing the new projectile hit position; (g) repeating steps (e) and (f) until no more shots are detected or a user has completed a shooting session; and (h) processing the projectile hit positions to provide a session score.

[0012] The invention further provides a method of combining a digital image capture device, a spotting scope, a digital display a computer for processing image data captured from the digital image capture device and taking images of the target with projectile hits made thereon, determining where on the target the hits were made and storing and processing such information to compile statistical data which can provide shooters with feedback. Reports can be shared with others (e.g., via emailing, printing reports, etc.) This statistical information can associate environmental variables, such as wind speed and direction and ammunition characteristics (e.g., projectile type and weight and velocity) with shooter proficiency. Upon initializing the system, the user can enter the following types of information (of this information can be automatically filled in):

[0013] Time and date of shooting session*

[0014] Location of shooting session

[0015] Distance to target (“range”)

[0016] Shooter's identity

[0017] Weapon used

[0018] Ammunition fired (including case, powder, charge, primer, projectile type, projectile manufacturer and projection weight)

[0019] Frequency and thoroughness of bore cleaning

[0020] Wind speed and direction*

[0021] Ambient temperature*

[0022] Barometric pressure*

[0023] Humidity*

[0024] Projectile velocity*

[0025] Projectile impacts*

[0026] Sequence of projectile impacts*

[0027] Shooting rate*

[0028] Shooter selected notes.

[0029] Certain information, including those items marked with an asterisk, can be collected by sensors connected to the system.

BRIEF DESCRIPTION OF THE DRAWINGS

[0030] FIG. 1 is a diagrammatic view showing a typical setup of the invention with a system user seated and shooting at a distant target through a chronograph, with an anemometer, a spotting scope with digital capture device, a communication hub and computer shown.

[0031] FIG. 2 is diagrammatic side view of a spotting scope on a tripod with an adaptor and a digital capture device attached to the adaptor.

[0032] FIG. 3 is a diagrammatic perspective view of a communication hub of the invention.

[0033] FIG. 4 is a flowchart showing process flow in a computer program used in the digital spotting system of the invention.

[0034] FIG. 5 is a flowchart showing process flow in the computer program when initializing a new session.

[0035] FIG. 6 is a screen print showing an exemplary New session screen print of the computer software.

[0036] FIG. 7 is a screen print showing the Session feature in the toolbar window being activated.

[0037] FIG. 8 is a screen print of an exemplary display dialog for shooter initialization.

[0038] FIG. 9 is a flowchart showing process flow in the computer software when a shot is fired.

[0039] FIGS. 10A and 10B are connected flowcharts showing the process of image subtraction in the computer software.

[0040] FIG. 11 is a flowchart showing the process of ending a session in the computer software.

[0041] FIG. 12 is a flowchart showing the process of exiting the computer software.

[0042] FIG. 13 is an exemplary screen print showing a shooting session in progress.

[0043] FIG. 14 is an exemplary screen print showing the File feature in the toolbar being accessed.

[0044] FIG. 15 is an exemplary screen print showing the Analysis feature in the toolbar being activated.

[0045] FIG. 16 is a screen print of the system displaying the Viewing slide show feature.

[0046] FIG. 17 is an exemplary screen print of the system displaying the Skill development analysis feature.

[0047] FIG. 18 is an exemplary screen print showing the View feature in the toolbar being activated.

[0048] FIG. 19 is a screen print of an exemplary display dialog for selection of a session to view.

[0049] FIG. 20 is an exemplary screen print showing the Customize feature in the toolbar being activated.

[0050] FIG. 21 is a screen print of an exemplary display dialog for updating shooter information.

[0051] FIG. 22 is a screen print of an exemplary display dialog for updating firearm information.

[0052] FIG. 23 is a screen print of an exemplary display dialog for updating range information.

[0053] FIG. 24 is an exemplary screen print showing the Customize feature in the toolbar being activated with the Update Ammunition variables being selected.

[0054] FIG. 25 is an exemplary screen print showing the Customize feature in the toolbar being activated with the Update Ammunition lots being selected.

[0055] FIG. 26 is a screen print of an exemplary display dialog for updating custom load information.

[0056] FIG. 27 is a screen print of an exemplary display dialog for updating factory load information.

[0057] FIG. 28 is an exemplary screen print showing the Settings feature in the toolbar being activated.

[0058] FIG. 29 is an exemplary screen print showing the digital zoom of the target.

[0059] FIG. 30 is a screen print of an exemplary display dialog for the image subtraction threshold.

[0060] FIG. 31 is a screen print of an exemplary display dialog for the adjusting microphone threshold.

[0061] FIG. 32 is an exemplary screen print showing the Help feature in the toolbar being activated.

DETAILED DESCRIPTION OF THE INVENTION

[0062] FIG. 1 is a diagrammatic view showing a typical setup of the invention 10 with a system user 12 taking aim and shooting with a firearm 14 at a distant target 16 through a chronograph 18, with an anemometer 20 on a tripod 22, a spotting scope 24 with a digital capture device 26 connected thereto. Spotting scope 24 is attached to tripod 28. Besides collecting wind speed and direction, anemometer 20 can collect information such as ambient temperature, barometric pressure and humidity. An event sensor 30 (which detects when a shot is taken) is also preferably provided. If no event sensor is provided, the system can be set up to periodically look for changes in the target image. Event sensor 30 can comprise a motion or shock sensor or a microphone that is set to be sensitive to the shot being fired. Since shooting ranges can be loud, and distinguishing between different firearms can be difficult, shock sensors connected to the firearm (e.g., by a strap, clip, tape or other means) can be more selective. Such a shock sensor can comprise a conducting ball attached to the length of a still wire, with the ball and wire positioned slightly out of contact with a contact, such as a hollow metal tube. The contact and wire are connected to wires to a circuit. When a sufficiently strong shock is experienced by ball, it temporarily makes contact with contact. This completes a circuit and with electronics, this is given as an indication that a shoct was taken at the target. In typical applications, a force of as low of about 0.5 to 2.0 ounces is a good indication that a shot has been fired. Chronograph 18, anemometer 20, digital capture device 26 and event sensor 30 are all in communication with a communication hub 32, which communication hub (or connector box) 32 is in communication with a computer 34. If needed, an external power supply 36 can be used to supply power to communication hub 32. The communication links between the various portions of the system can comprise wired communication links, such as Universal Serial Bus (USB) and IEEE 1394 (Institute of Electrical and Electronic Engineers) links, also know as “FireWireTM” connections, paired wired with connectors such as standard microphone connectors, or wireless links, such as by radio frequency. Chronograph 18 has a wired communication link 50 to communication hub 32, anemometer 20 has a wired communication link 52 to communication hub 32, digital capture device 26 has a wired communication link 54 to communication hub 32, and event sensor 30 has a wired communication link 56 to communication hub 32 and communication hub 32 has wired communication link 58 to computer 34. Again, however, the communication link could be provided by wireless means. Chronograph 18 is set up so that user shoots though its two shoot guides 60. An example of a useable chronograph 18 is the line of Shooting Chrony® provided by Shooting Chrony, Inc. of North Tonawanda, N.Y. So as to accurately capture the wind speed and direction, anemometer 20 is preferably set near the projectile's flight path. An example of anemometer 20 can be a DIY Rotorvane anemometer provided by Realtime Control, of Victoria, Australia. Other anemometers with digital outputs can be used. Using the system of the invention, a user can obtain reports of the user's performance at any particular session and past sessions, and share this information with others. Digital capture device 26, chronograph 18, anemometer 24 and event server 30 can each be considered as input sensor devices.

[0063] Turning to FIG. 2 there is shown a diagrammatic view of an exemplary optical spotting scope 24 on an exemplary tripod 28. An adapter 70 is connected to optical spotting scope 24 so that digital capture device 26 can be connected thereto. Digital capture device 26 can have optics either built in or attached thereto to provide the desired degree of magnification of the target 16. For targets placed close to the shooter, such as 6.4 meters (7 yards), optical magnification with a separate optical spotting scope may not be required. However, at longer ranges, such as 91 to 914 meters (100 to 1000 yards), optical magnification or remote down range sensors are necessary. Digital capture device 26 can comprise a conventional still digital camera, a conventional digital camcorder, or a specially built digital camera having an optical sensor, such as a charge coupled device (CCD) image sensor (for example a Sony KAC-1310 device), or complementary metal oxide semiconductor (CMOS) image sensor (for example, a FOVEON X3 F10-14X3-D08A image sensor.) Other devices now available or hereinafter developed when combined with any necessary electronic circuitry and control, could be used. Digital image capturing device 26 preferably includes optical magnification and/or digital magnification features.

[0064] FIG. 3 is a perspective diagrammatic view of an exemplary communication hub 32 with communication ports 80A-E located thereon for connection to a chronograph, an anemometer, a digital capture device (a camera), a shot sensor, and a computer, respectively. The communication hub 32 has a power switch 82 located thereon, and can have a optional power jack 84.

[0065] FIG. 4 is a flowchart 400 showing process flow in a computer program at start up used in the digital spotting system of the invention. At Step 401, a user starts the software application. If display is not set to an 800×600 resolution in step 402, a user is given option to change resolution for better screen display in step 403 and if user decides to do so, changes it in step 404. The digital capture device (e.g. digital camera on digital camcorder) is initialized in step 405, and a welcome image can optionally be displayed 406 (see FIG. 6). Next, a tool bar and status bar is displayed in step 407. A notice is displayed if disk space is low 408. In Step 409, the screen will be split into multiple parts, e.g., four parts in step 409. A default window is displayed in step 410 and all global application variables are set in step 411, with the system ready for a new session in step 412.

[0066] FIG. 5 is a flowchart 500 showing process flow in a computer program when initializing a new session on the computer software of the invention. In step 501, a user starts a new session. In step 502, a display dialog permits user to select the shooter. In step 503, a user selected a shooter. In step 504, a user is given the option to alter session details. If user wishes to alter session details, user selected edit session details in step 505, and the software displays a dialog to edit session details in step 506. The user then, in step 507, edits session details and in step 508 the session details are stored. If the user does not alter session details in step 509, user proceeds to step 508 where session details are stored. A session table 510 can be used to store session records. The software will, in step 511, display live image preview and camera controls. If necessary, a user can alter the camera controls in step 512. Once camera controls are satisfactory, user selects capture image in step 513. In step 514, the image of the target is captured and user is given the option to perform a digital zoom of the target image. In step 515, user performs a digital zoom. In step 516, user selects “done” to finalize an image. In step 517, user zooms the image if necessary, and in step 518 the image is normalized. In step 519, the software calculates the center of the target and the number of pixels per area (e.g., cm2 or in2) In step 520, the number of grayscale colors in the image is reduced (e.g., from 256 to 16). In step 521, the software registers the image. In step 522, the software saves the captured image. In step 523, the number of pixels per area is stored and updates a record in the sessions table 510. The display shows the captured image, a zoom slider/wind sensor and scoring view in step 524. In step 525, an initialize event sensor periodically checks for shots fired (e.g., every 0.2 seconds or so.) Finally, in step 526, the system is ready for the first shot to be fired.

[0067] FIG. 5 is a screen print 414 showing an exemplary welcome screen of the invention.

[0068] FIG. 6 is a screen print 600 showing an exemplary “new session” screen print of the computer software.

[0069] FIG. 7 is a screen print 700 showing the session feature in the toolbar window being activated.

[0070] FIG. 8 is a screen print of an exemplary display dialog 800 for shooter initialization.

[0071] FIG. 9 shows flowchart 900 showing process flow in a computer program when a shot is fired for the computer software of the invention. In step 901, system determines if all shots have been fired. If yes, then an end session routine is run in step 902 (see FIG. 11 and description below). If no, then in step 903 the event sensor is restarted. In step 904, the system is readied for the next shot. In step 905, a user fires a shot. In step 906, the event sensor is triggered by the sound of the shot or a vibration sensor detects the shot being fired. The sensor can check every 0.2 seconds or so for a shot being fired. In step 907, the event sensor is stopped. In step 908, the wind speed and direction at the time the shot was fired are gotten from the anemometer. In step 910, a new image of the target is taken. In step 911, a zoom of the image will be taken if necessary (i.e., if user performed any digital zoom on the original image.) In step 912, the image is normalized. In step 913, the center of the image is calculated. In step 914, the number of grayscale colors is reduced in the image (e.g. from 256 to 16). In step 915, the image is registered. In step 916, image subtraction is performed to find out where the shot hit the target. In step 917, if the shot detection did not give an error, then a score for the shot is determined. If the shot detection gives an error in step 917, a query is asked whether this was the first attempt in step 919. If the answer is yes, then the system loops back to step 908 and repeats steps from there. If this was not the first attempt, then a determination is made that the system was unable to detect the shot, and the system moves on to step 918, where the score for the shot, if applicable. In step 921, the shot detail is stored and added to a record in a shots table 922. The new image of the target taken after this last shot is then displayed on the computer screen in step 923. The system highlights all of the previous shots made on the target in a distinguishing color (e.g., yellow) and highlights the most recent shot to the target in a different, distinguishing color (e.g., red) in step 925. At this point, the system loops back to step 901 where the query is whether all shots have been fired.

[0072] FIGS. 10A and 10B are connected flowcharts showing the process of image subtraction 916 in the software. In step 1001, the system creates a new document to display a new image. In step 1002, the system calculates the difference in light intensity between images. In step 1003, the system initializes a function to compare every pixel in the image for change. In step 1004, the system starts at one pixel (e.g., 1,1) and inspects all the pixels row by row. In step 1005, a determination is made whether the pixels are with allowable boundaries. If the answer is yes, then in step 1006, a comparison is made of the RGB value of the pixels. In step 1007, if there is any change in the value of the pixel, then a decision is made in step 1008 whether this is the first successive changed pixel. If the answer is yes, then this x position is stored in step 1009, and the system procedures to step 1010, where the system increments the count of identical x pixels. If, in step 1008, the answer is no, then the system also proceeds to step 1010. From step 1010, a determination is made in step 1011 whether gnMinShotSize successive pixels have changed. If yes, then in step 1012, a flag is set to indicate that a projectile shoot may be here and store a leftmost pixel as a left edge of the shot if further left than the most current shot edge. In Step 1013, a determination is made whether the number of successive changed pixels equates to a valid shot size. If the answer in step 1011 is no, then the system also goes to step 1013. If the answer in step 1013 is yes, then in step 1014 the right-most changed pixel is stored as a right edge of shot if further right than the current shot edge, and the system goes on to step 1015. If in step 1013 the answer is no, then the system also proceeds to step 1015, where a determination is made whether the number of successive changed pixels exceed gnMaxShotSize. If yes, then in step 1016 a flag is reset to indicate that shot is not here and reset left and right edges of shot to previous values. If in step 1015 determination is no, step 1016 is skipped. Turning back to step 1007, if there is no change in pixels, then in step 1017 the system resets the count of identical x pixels. Next, in step 1018 the system determines whether the previous pixel was part of a line of successive pixels of length of gnMinShotSize of more. If yes, in step 1019, the center of the line of successive pixels is taken. If no, the system continues to step 1022. If yes at step 1018, a determination is next made, in step 1020, of whether a line of successive pixels of length gnMinShotSize or more intersect this line at a center point. If yes, in step 1021, the search boundaries are restricted to a square of width (gnMaxShotSize*2) around the center point, and then proceeds to step 1022. If no, in step 1020, the system proceeds to step 1022. In step 1022, the system determines whether X<(imgWidth−1). If the answer is yes, in step 1023 the system moves to pixel (x+1, y) and the system loops back to step 1005. If the answer in step 1022 is no, then the system goes on to step 1024, where the system determines whether y<(imgHeight−1). If the answer is yes, the system proceeds to step 1025 where it loops back to step 1005. If the answer in step 1024 is no, then the system proceeds to step 1026 (see FIG. 10B). In step 1026, the system initializes a function to only compare pixels within specified boundaries. Next, in step 1027, starting at pixel (xMin, yMin), the system inspects column by column. In step 1028, the system compares RGB values of the pixels. In step 1029, the system determines if there is any change in pixel. If the answer is yes, in step 1030 a determination is made if this is the first successive changed pixel. If at Step 1027 there is no change in pixel, then in Step 1040 the software resets the count of identical y pixels and then Step 1039 is carried out. If the answer in Step 1030 is yes, the system stores the y value, and proceeds to step 1032, where the count of identical y pixels is incremented. If in step 1030, the determination is no, then step 1032 is also carried out. Next, in step 1033, a determination is made whether gnMinShotSize successive pixels have changed. If yes, the system moves to step 1034, where the bottom-most pixel is stored as the bottom most edge of shot if lower than the current shot edge, and the system moves to step 1035. If, in step 1033 the answer is no, then in step 1035 a determination is made whether the number of successive changes pixels is a valid shot size. If yes, in step 1036, the system stores the top-most changed pixel as a top edge of shot if higher than the current shot edge, and the system proceeds to step 1037. If, in step 1035 the answer is no, then in step 1037, a determination is made whether the number of successive changed pixels exceed gnMaxShotSize. If yes, then in step 1038, the system resets the top and bottom edges of shot to the previous values, and the system goes to step 1039. If, in step 1037 the answer is no, then the system also goes to step 1039, where a determination is made whether y<yMax. If the answer is yes, then in step 1041, the system moves to pixel (x, y+1) and the system loops back to step 1028. If in step 1039 the answer is no, then a determination is made in step 1042 whether x<xMax. If the answer is yes, then in step 1043 the system moves to pixel (x+1, yMin) and loops back to step 1028. If the answer in step 1042 is no, then the pixel comparison is deemed complete in step 1044. Next, the system attempts to calculate and store center x and y coordinates of shoot positions and y and y radius. Next, in step 1046, a determination is made whether the area of change is to large. If the answer is yes, in step 1047 a message is given to the user that the system is unable to automatically detect the shot, and the user will be allowed to manually set the shot position. If in step 1046 the answer is no in Step 1048, a determination will be made whether there is any changes between the two images. If yes, the program goes to Step 1050. If the answer is no, in step 1049 the system concludes that the shot missed the target. However, the system allows a user to override this conclusion and specify where the shot hit the target if the system is in error. Lastly, in step 1050 the image subtraction is complete.

[0073] FIG. 11 is a flowchart 1100 showing the process of ending a session. At 1101, the session is completed. The user is given an option to archive the session in step 1102. If the user decides to do so, in step 1103, all data is already stored in a database and is left there. Next, in step 1104, the original target image is archived in an appropriate format, such as a jpeg or other type of file. In step 1105, any working copies of the target image is deleted, in step 1106 all session variables are reset, and finally, the system is readied, in step 1107 for a new session. If, at step 1102 the user does not wish to archive the session, in step 1108 the session is removed from the database and the session is deleted from the Sessions table 510. Next, all shots are removed from the database in step 1110 and all records are removed from the Shots table 922 for the session to be deleted. Thereafter, the steps 1105, 1106 and 1107 are carried out.

[0074] FIG. 12 is a flowchart 1200 showing the process of exiting the software application. In step 1201, a user selects exit application. In step 1202, a determination is made whether the user is in the middle of a session. If yes, in step 1203, the session is removed from the database, and the session is deleted from the Sessions table 510. Next, the system removes all shots from the database in step 1205 and deletes all records from the shot table 922 for this session. Next, in step 1207, a working copy of the target image is deleted, and in step 1208 all session variables are reset. In step 1209, a determination is made whether the display resolution was changed when the system was started. Turning back to step 1202, if the user was not in the middle of a session, in step 1210, the system will ensure that there are no working copies of the target image stored, after which the system goes to step 1209. If in step 1209 the system determines yes, the user is asked in Step 1211 whether user wishes to revert the display resolution to any previous setting. If the user wishes to do so, in step 1212, the display resolution is reset and the system is exited in step 1213. If the response to steps 1209 or 1211 is no, then the step is also exited in Step 1213.

[0075] In summary, the computer software performs the following basic steps: (a) taking an initial digital image of the target and storing the starting pixel values of the image; (b) detecting that a shot has been fired at the target; (c) taking a new digital image of the target and comparing the new digital image with the initial digital image on a pixel by pixel basis and from differences in the pixels' characteristics, determining the position where a projectile hit the target; (d) storing the projectile hit position; (e) repeating step (b) and taking a further digital image of the target and comparing it to the prior digital image of the target on a pixel by pixel basis, and from differences in the pixels' characteristics, determining a new projectile hit position on the target; (f) storing the new projectile hit position; (g) repeating steps (e) and (f) until no more shots are detected or a user has completed a shooting session; and (h) processing the projectile hit positions to provide a session score.

[0076] FIG. 13 is an exemplary screen print 1300 showing a session in progress, with an image of a target captured with a plurality of projectile hits shown thereon.

[0077] FIG. 14 is an exemplary screen print 1400 showing the File feature in the toolbar being accessed.

[0078] FIG. 15 is an exemplary screen print 1500 showing the Analysis feature in the toolbar being activated.

[0079] FIG. 16 is a screen print 1600 of the system displaying the Viewing slide show feature. With this feature, a user can view each target captured and compare results from session to session.

[0080] FIG. 17 is an exemplary screen print 1700 of the system displaying the Skill development analysis feature. For example, this feature can display the user, the range, the firearm and ammunition used, charting the average distance from the hits to the target centers along with the session.

[0081] FIG. 18 is an exemplary screen print 1800 showing the View feature in the toolbar being activated. In this view, the wind speed and direction along with user information and score can be displayed.

[0082] FIG. 19 is a screen print of an exemplary display dialog 1900 for selection of a session to view.

[0083] FIG. 20 is an exemplary screen print 2000 showing the Customize feature in the toolbar being activated.

[0084] FIG. 21 is a screen print of an exemplary display dialog 2100 for updating shooter information.

[0085] FIG. 22 is a screen print of an exemplary display dialog 2200 for updating firearm information.

[0086] FIG. 23 is a screen print of an exemplary display dialog 2300 for updating range information.

[0087] FIG. 24 is an exemplary screen print 2400 showing the Customize feature in the toolbar being activated with the Update Ammunition variables being selected.

[0088] FIG. 25 is an exemplary screen print 2500 showing the Customize feature in the toolbar being activated with the Update Ammunition lots being selected.

[0089] FIG. 26 is a screen print of an exemplary display dialog 2600 for updating custom load information.

[0090] FIG. 27 is a screen print of an exemplary display dialog 2600 for updating factory load information.

[0091] FIG. 28 is an exemplary screen print 2800 showing the Settings feature in the toolbar being activated.

[0092] FIG. 29 is an exemplary screen print 2800 showing the digital zoom of the target.

[0093] FIG. 30 is a screen print of an exemplary display dialog 3000 for the image subtraction threshold. This feature permits a user to adjust the sensitivity of the system to detect minimum and maximum shot sizes in terms of pixels.

[0094] FIG. 31 is a screen print of an exemplary display dialog 3100 for the adjusting a microphone threshold. This feature permits a user to adjust the sensitivity of a microphone used as an event sensor. However, the system can employ a vibration sensor attached to the firearm for this purpose. This alternative vibration sensor itself can have the sensitivity of its input adjusted as need.

[0095] FIG. 32 is a exemplary screen print 3200 showing the Help feature in the toolbar being activated.

[0096] Having thus described exemplary embodiments of the present invention, it should be understood by those skilled in the art that the above disclosures are exemplary only and that various other alternatives, adaptations and modifications may be made within the scope of the present invention. The presently disclosed embodiments are to be considered in all respects as illustrative and not restrictive. The scope of the invention being indicated by the claims, rather than the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.