Wishlist
- Agent.GPS
- Out of Memory in CameraData line 146. (Seems to be solved in rev 1927)
- Area calculation and other optimalizations (Partly done (area removed from ManifoldImage:RenderPatch) by merge of Agent\Map with 2009\competition).
- No mobility.tif exist in the file system warning (solved in rev 1930).
- GetGeo info's (already reduced in rev 1927).
- 2009 branch (made)
- Missing Matrix functionality. Chapter 4 of MatLab has a nice overview. Matrix2 has Transpose, Determinant and Invert, Matrix3 not yet. Other basic functions are Identity, Norm, PseodoInverse, EigenValues and Single Value Decomposition.
- The Matrix class contains several functions which are not overloaded yet. Function which are available are (Identity, Zeros, Ones), (Negative, Trace, Equals).
- Improved Matrix-interface. Missing Operation is '\', missing function Minor(row,col).
.
Started Labbook 2010.
11 December 2009
- Changed for the EKF-assignment the MAP_RESOLUTION from 15 to 100. Gives much sharper track of patches.
- Group1 predicts for mark2 [264.77], [-117.39], [0.91 ] (SRL 0.374 , -0.092 / 1.735), should be (0.5, 0).
- Group2 predicts for mark2 [-180,89], [-62.54], [-0.76].
- Group3 draws the agent, and makes the required eight. Yet, the eight is too small. They predicts for mark2 0.14, -0.01 / -0.65 (NoiseQ = 1.0, 0.9 & 0.8), 0.13, -0.02 / -0.44 (NoiseQ 0.5). 10x smaller alpha's (0.01,0.02,0.01,0.02) improved the result to 0.15, 0.02, -0.75 (NoiseQ = 0.9).
- Checked the original paper for optimal settings. Indicate a noise of 15% on range measurements and 10deg on angles.
Setting the diagonal of R on 0.15, 0.028 and 0.00001 gave 0.13, -0.01, 0.69. A 10x bigger orientation error gave a more quite path.
- Also checked the previous paper for optimal settings.
- Added VictimData to Flags, to visualize the observations. Only Victims with two parts are added to the map. The VictimData are relative location, so the polar measurements can easily be converted.
9 December 2009
- The Radish Data Set also contains a reference pose estimate. The first mark is given at time 36050, which is estimated on (461, -427) (should be 500,-500). The second mark is given at time 38873, which is estimated on (373, 96) (should be 500,0). Yet, after the second mark (time 39552) estimate comes close to (500,0), directly followed by a completely wrong estimate (or a kidnap) at time 39802.
30 November 2009
- Trying to start DM-Mobility world on different machines. u0153 gives for instance 'DetourCreateProcessWithDll failed with error: 1'.
25 November 2009
- Implemented occuppancy grid for GridMapping assignment. Store hits and misses in two different quadtrees in the ManifoldInfo. Plotting the misses on a global grid shows that they are correct registered.
- When I have both a hit and mis near a grid position, I want to query the number of hits and misses. That functionallity is not yet available.
- Could not select the patches or save the map (Old competition bug).
- Added a function to draw QuadTrees (up to 5 levels):
3 November 2009
- Merged UsarLib/Team from assistance to experimental (repairs GetConf). Also merged Sensor/Data from assistance to experimental (repairs Sonar, adds Time to LaserScan).
- Strange enough, the NotesLayer (both goal-points and landmarks) is a factor 10 too large?!
2 November 2009
31 October 2009
- Switching red and blue channel solves the issue with the saved images. Yet, there is still a problem with the learned histogram. The detector triggers on the oker sonar's of the P2DX (not on the yellow goal or the ball).
- Learned values seems to be RGB. Tried all combinations: only BGR (white/green edges) and RGB/GRB (oker sonar) recognized flags.
- Next try, learn flags from groundtruth.
30 October 2009
- Updated UsarLib and Agent/Config to 1989. Still works.
- Updating Agent/Sensor/Data/CameraData.vb triggers the fault. Setting the PostponeConvertion to False helps, but now the Histogram complains that is missing the RawData. For the whole assistance rev. 1989 (except UsarCommander), the effect of setting PostPone to false has the same effect. Try again with Upis image format set to Raw. Still no RawData. FlagDetector has the same problem.
- The modification of Postpone was done in competition rev. 1884 (June 10, 2009). The labbook said that the modification made the code extremely slow. Moved CameraData.vb from competition_final to assistance, but this was a really old version (April 2009). How is it possible that this version works? Why do I still have complaints about RawData?
- Checking the load process. Found two problems: first the wrong viewnumber was given. Second, GetSubView was not implemented for Raw images, and just gave the image. Finally, histImage used the non-existing bitmap to estimate the size of the image. Replaced by the rawdata size, and it works: Mark that the blue on the side of the policecar is now purple, is blue also seen as sky?
- FlagDetector is now also running in Raw-format. Strange enough, it detects white/green edges instead of pink surfaces. Is this due to the wrong colloring (yellow/orange/red) seems blue?
- Created a version of CameraData which creates a Bitmap image for the displaywhen receiving Raw images. This works fine for UsarSlamAgent, but not for UsarSkinAgent (MainFrame error).
- Made a clone version, but this one also freeses (although doesn't crash).
- Try the Img approach from Helen.
29 October 2009
- Analyzed the differences between the assistance and competition branch. The assistance branch exists since rev. 1925. The first modification, rev. 1927 is a partial copy of the latest competition-branch (1915). This revision is working,, rev. 1927 not. Rev. 1925 works.
- Downgraded the UsarCommander from 1989 to 1925. Still an error. Upgraded UsarCommander from 1925 to 1989. Still no error, so the modifications in UsarCommander are OK.
- Lets try to upgrade ImageAnalysis from 1925 to 1990. Also works fine, black windows are detected.
- Next upgrade: Agent/Sensors.
28 October 2009
- My desktop-pc couldn't make contact to UsarSim on the lab or nb-unreal (also not with telnet). Strange.
- ProcessCameraData gives an ReleaseHdc error in the mainForm. Changed PopData to PeekData, but this resulted in complains about locked bitmaps.
- Maybe the BitmapConverter at the end of histImg is the problem.
- Tested the SkinDetector in the 2009/competition branch. After some minor modifications, the code doesn't crash. Strange enough, only get upper left quadrant from the image in the controller (multiview is off).
- Tested with the 2009/competition with a P2AT. Strange enough, the skinDetector fired on a false positive (one of the police-car wheels), combined with skin of the sky.
27 October 2009
- Tijn first converts the omnidirectional images to cylindrical images, before the findMarker is called.
- The ImageProcessing is selected in UsarAgentConfig (New SkinDetector).
- Could store histStruct.pink(:,:,7) in variable pink_matrix2_bin7, and store this matrix with save -ASCII 'pink_bin7.csv' 'pink_matrix2_bin7'.
- UT2004 doesn't start up with DM-spqrSoccer2006_250 on u015305 and u013154. Also Editor fails on Assertion (Actors[1]->Brush).
- Merged with sroebert. Many additional functions. Tried histogramTo3DDataFormat, but only 0,0,0 seems to be populated (not 4,1,3).
22 October 2009
- Added drawing of landmarks to NotesLayer (rev. 1981 of 2009/assistance).
21 October 2009
- Checked the conversation between Tijn Schmits and Steven Roebert. The code for LandmarkDetection was already on my memorystick.
- LandmarkDetection needs posy.jpg, posb.jpg, posp.jpg, neg.jpg, or histograms.mat. Requested Tijn those files.
- The modification of sroebert, stores C:\\Images\\INS.csv with the difference between the CurrentINS and LastINS (not for GroundTruth).
20 October 2009
- Checked KF Experiment from sroebert1323. Run.m loads two datafiles and makes the call [err_u, err_x] = KF(ut,u,z,L);.ut is the ground truth, used to plot the error. The two values in u and ut are the velicity and delta_angle.
- Checked my modifications of 15 October 2008, but couldn't find direct access to Kalman filter provided by Neodym library.
- Downloaded rev. 431 from Kalman Filter, and added it to 2009/assistance.
- To use this Kalman filter, I should initiate the with dkf = New DiscreteKalmanFilter(x0, P0), followed by dkf.Predict(F,G,Q) and dkf.Update(z,H,R).
- To reproduce the KF experiment: x0=[0 0 pi/2]', P0 = 0*eye(3). F is the Jacobian with respect to robot locatioa: F(u)=F([v,da]')=[1 0 -v*sin(x_(3)+da);...
0 1 v*cos(x_(3)+da);...
0 0 1]; G is the Jacobian with respect to control = [cos(x_(3)+da) -v*sin(x_(3)+da);...
sin(x_(3)+da) v*cos(x_(3)+da);...
0 1]; Q is the expected user input noise .02*[1 0; 0 1]; R is the expected robot location/orientation noise 1*[1 0; 0 1]; H is the Jacobian with respect to landmark location ...
- In rev. 1305, sroebert added some code to print landmark locations in LiveDriver (commented out).
9 October 2009
- Still same error. UsarCommander loads Usar\UsarCommander\bin\Debug\UvARescue.Math.dll, but with the comment No symbols loaded.
- Did a solution clean and rebuild.
- Checking both UvARescue.Math.dll in Usar\UsarCommander\bin and Math\bin with ildasm.exe reveiled that no Pose3D is the UsarCommander's version.
- In UsarCommander->References there is an explicit reference to Math in its onw directory.
7 October 2009
- ManifoldSlam:ProcessLaserRangeData uses sensor.Agent, which is a UsarSlamAgent. This Agent has a InsSensor, but not InsPose. ManifoldSlam does a DirectCast of Sensor. A SingleStateSensor has CurrentData, but not a PoseEstimate. Maybe I should make a Base Class PoseSensor.
- >ManifoldSlam:ProcessLaserRangeData does the PopData, not the UsarSlamAgent. All behaviors do only PeekData.
29 September 2009
- Looked at Rawseed for nice Benchmark Problems: found two:
22 September 2009
- Tested usarsim installation on pc-u013152. Only RoboCup09Outdoor didn't work.
- Made first modifications to read in sonar.txt for Nomad.
14 September 2009
- DM-compWorldDay1 250 crashes on u013153:
UT2004 Build UT2004_Build_[2005-11-23_16.22]
OS: Windows XP 5.1 (Build: 2600)
CPU: GenuineIntel PentiumPro-class processor @ 1797 MHz with 2004MB RAM
Video: Intel(R) Q35 Express Chipset Family (4864)
Assertion failed: GIsEditor || GetSuperClass() || this==UObject::StaticClass() [File:.\UnClass.cpp] [Line: 881]
History: UClass::Bind <- (Class DM-compWorldDay1.AfroBurnsA3) <- ULinkerLoad::CreateExport <- (AfroBurnsA3 165835) <- IndexToObject <- ULinkerLoad<
- This map still works on u013154. (-8.59, 46.79)(2.10) seems to be a good start position, outside the urban cannon. Strange enough, on this location only 3 Satellites are seen Zeus_run8_5tominus8_47.log. When turning, the Zerg looses the GPS-signal. At (7.18,5.83) the signal is found again, and directly lost. At (7.18,5.92), at (7.18, 6.17) found again. This time lost at (-0.36,21.43) and directly found and lost, found. Lost again at (0.21,32.32) (halfway). Lost again at (-8.59,46.80) (80%). Seems to be more related on passing close to vehicles.
- GPS messages are inside logfile, GPS sensor is mounted in Agent, but breakpoint doesn't fire in GPSdata.
- Spawned AirRobot at (-8.59, 46.79, -3.7), instead of -4.0m for Zerg, but assistance doesn't have the AirRobot controlbuttons.
- Breakpoints are now working. Maybe due to LF.
- Drove Zerg from (-8.59, 46.79, -3.7) to (-48.23,50.78). After pressing Done, I got two warnings 'Could not get data from layer Map' and 'layer jury'. Just before that, agent was localized on a path along the driven path?! Final reported position: (-8.59, 46.79). Turning on that location doesn't give stable GPS signal. Last reported GPS before that position -14.12,58.89. Lost at -8.59,46.79.
- Made a new branch 2009/assistance. Copied 2008/assistance and removed reference to Stefan's behaviors.
- With the update of Agent, also all behaviors have changed. Should check WalkSquare.
Previous Labbooks