Comments (7)
Hi, I will be implementing other parameters soon that should speed it up, see issue #7
from openmht.
Hi, I will be implementing other parameters soon that should speed it up, see issue #7
Thank you so much. Look forward to the update.
I also want to know how to set the parameters of gating area, k, q, r, and n.
I tried this test01.csv with one or two subjects in a frame, and the total is 60 frames.
test01.csv
The parameters I used are as follows:
image_area = 422288 # Image width x height in pixels
gating_area = 1 # Gating area for new detections
k = 1 # Gain or blending factor
q = 0.00001 # Kalman filter process variance
r = 0.1 # Estimate of measurement variance
n = 1 # N-scan pruning parameter
However, I got track 0 to 7 in my output file, which is weird.
test01_output.csv
Do you have any ideas how to solve this problem? Thanks a lot!
from openmht.
Hi, below are more details on the parameters, and please browse the paper for specifics on tuning these. I would try increasing K if your measurements have high accuracy, and increasing N for a higher accuracy solution (but slower runtime) as well. I am currently working on adding the Bth and Nmiss parameters which should improve performance as well. I'm also adding the parameters as command-line arguments so you can test different values more easily.
Parameters
Modify parameters by editing the file params.txt:
Parameter | Description |
---|---|
v | The image (frame) area in pixels (Default: 307200). The likelihood under the null hypothesis for an observation becomes the probability of detection (PD) 1/V. |
dth | Gating area for new detections implemented as the threshold for the Mahalinobis distance d2 between the observation and prediction (Default=1000). |
Kalman filter parameters:
Parameter | Description |
---|---|
k | Gain or blending factor. Higher gain results in a greater influence of the measurement relative to the filter's prediction (Default=0) |
q | Initial estimate of the process noise covariance (Default=0.00001) |
r | Initial estimate of the measurement noise covariance (Default=0.01) |
Track tree pruning parameters:
Parameter | Description |
---|---|
n | Go back N frames and prune branches that diverge from the solution. Larger N yields a more accurate solution due to a larger window, but will take a longer time (Default=1). |
bth | If the number of branches exceeds the number Bth, then prune the track tree to only retain the top Bth branches. |
nmiss | A track hypothesis is deleted if it reaches Nmiss consecutive frames of missing observations, which are due to occlusion or a false negative. |
from openmht.
I will test with your inputs as well
from openmht.
Any updates on speeding up the MWIS calculation? Are the new parameters included, and if so how do I specify them?
from openmht.
Still working on this, sorry!
from openmht.
@Engineero I have added two missing pruning parameters from the paper: Bth for setting the maximum number of branches, and Nmiss for the maximum number of consecutive frames with missing observations for a track in commit 5627c53. Please try adjusting these parameters to improve performance.
from openmht.
Related Issues (19)
- Question about missing function in openmht.py? HOT 1
- the order isssue v_ordered(set()) in function of weighted_graph.py HOT 2
- What method was used to find the MWIS? HOT 1
- plot_tracks update HOT 2
- missing ParameterFile.txt for SampleData HOT 2
- To GPS HOT 5
- Number of Frames HOT 3
- Add support for N-dimensional inputs
- Question about U,V HOT 1
- Value for probability of detection P_D HOT 2
- self.__n_miss counter starting with nmiss instead of 0 HOT 1
- branches_added initialization location HOT 1
- bug of weighted graph HOT 1
- the MWIS part will take a really long time when the number of branches reaches 35 or more. HOT 8
- Can I know the meaning of u and v in the input file? HOT 2
- Meaning of frame column in input and output files HOT 4
- where can i set Bth threshold in the code? HOT 2
- set_edges not properly setting graph_dict HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openmht.