forked from lagadic/visp
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathChangeLog
386 lines (381 loc) · 19 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
ViSP
Visual Servoing Platform
Resume of the change log
Copyright Projet Lagadic / IRISA-INRIA Rennes, 2006-2010
www: http://www.irisa.fr/lagadic
ViSP (Subversion trunk)
- New Features
- New vpForceTwistMatrix class that allows to transfer a force/torque skew
from one frame to an other.
- new vpVelocityTwistMatrix class that allows to transfer a velocity skew
from one frame to an other. The vpTwistMatrix class is from now
deprecated.
- Copy constructors were added to better support stl lists and vectors.
- Add of a new wireframe simulator.
- In vpRobotViper850 add openGripper() and closeGripper() functions to
control the Schunk two fingers electric gripper.
- In vpHomogeneousMatrix addition of
. eye() method to set the transformation as identity
. extract(vpThetaUVector &) to extract the rotation as a Theta U vector
- In vpThetaUVector addition of &operator=() method to initialise all the
angles to the same value
- New vpRobotCycab class to communicate with the Cycab car-like mobile
robot at Irisa.
- Examples:
- New example calibrateTsai.cpp to show how to use the vpCalibration class to estimate
the hand to eye transformation.
- Bug fixed
- [9476] Memory leak in vpImageIo::readPNG() functions.
- Improvements
- Change the FindOpenCV.cmake in order to detect automatically OpenCV 1.1, 2.0 and 2.1.
- In firewire framegrabbing using vp1394TwoGrabber based on libdc1394-2.x,
add possibility to change during the execution the shutter, the gain, the
brightness, ... (see documentation for more details)
----------------------------------------------
ViSP 2.4.4 (released January 8th, 2010)
- Features removed
- vpMePath has been removed.
----------------------------------------------
ViSP 2.4.4-rc1 (released December 21th, 2009)
- New Features
- During CMake configuration, when a third-party library is detected,
it is now possible to turn off the default usage of the library.
- Warning during the build if deprecated functions are used
- For the Irisa's Afma6 robot addition of a new vacuum tool (vpAfma6).
- New vpImagePoint class for image point coordinates.
- New vpPlot class that enables real time drawing of graphics under Unix.
- Ability to use other colors than the predefined ones with the rewriting
of the vpColor class and modifications in display functionalities.
- New vpKalmanFilter and vpLinearKalmanFilterInstantiation classes with
velocity and acceleration state models.
- New vpFeatureTranslation: ctc*
- New USE_COIN_SIMULATOR option during CMake configuration to enable or
disable simulation capabilities based on Coin3D suite.
- New vpViper, vpViper850 and vpRobotViper850 classes to provide an
interface for Inria's Adept Viper 850 robot.
- New vpBSpline and vpNurbs classes to manipulate 2D BSpline and
2D Nurbs (Non Uniform Rational BSpline).
- New vpMeNurbs class to track object edges.
- New vpFFMPEG class to interface the FFmpeg library.
- New vpVideoReader and vpVideoWriter classes to manipulate easily the
video files and the image sequences.
- Improvements
- In firewire framegrabbing using vp1394TwoGrabber based on libdc1394-2.x,
bus reset can be switched off in the constructor. There are also
improvements in the acquisition using acquire(vpImage<unsigned char> &I,
...) by removing the color coding format request and by support of the
RAW8 and RAW16 video format.
New dequeue() functions were also introduced to make possible to
separate the ring buffer dequeuing and enqueuing. This behavior
is for example useful when image processing needs to be introduced
between the dequeuing and enqueuing stages. It may also useful
to synchronise the image acquisition with an other sensor.
New setPanControl() function was introduced to set the PAN register
0x884 to control single or multiple image transmission from stereo
vision cameras like the PointGrey Bumblebee.
- vpDot2: The tracking is restarted in vpDot2::track() if a dot is found
but is not valid.
- In vpDisplay, new getKeyboardEvent() functionality to handle key
events and new getPointerMotionEvent() functionality to handle mouse
pointer motion event.
- Optimization of the vpMatrix class.
- Examples:
- New examples in examples/servo-viper850 to show how to use the
linear Kalman filter to compensate the tracking error due to the
motion of a target.
- New examples in examples/servo-viper850 to show how to use the
secondary task to avoid joint limits.
- New plotting example in example/tools/plot.cpp
- In grab1394Two.cpp example, addition of [-r] new option to reset the bus.
- New examples to show how to build a 3D visual servoing without using the
vpServo and vpFeature classes:
servoSimu3D_cMcd_CamVelocityWithoutVpServo.cpp
and servoSimu3D_cdMc_CamVelocityWithoutVpServo.cpp
- Bug fixed
- [7638] Memory leak in all vpFeature... classes was reopened
- [7888] vpV4l2Grabber cannot acquire an image from an analog camera
on Ubuntu 8.04 Hardy Heron
- [7994] vpMeLine : initialization problem for horizontal lines
- [8001] Coin and SoQt are not detected during CMake configuration
under Fedora 10
- [8032] Link error whith GSL while compiling HelloWorld.cpp on OSX
- [8225] Bug in the multiplication of a twist matrix (6x6) by a matrix (6xn)
- [8248] Compilation error under Windows MSCV8 if deprecated functions
are not build
- [8249] Compilation error under Windows MSCV8 when building ViSP
as a shared library (DLL)
- [8257] Bug in vp1394TwoGrabber::resetBus()
- [8259] Segfault in vpDisplayX
- [8389] vpKltOpencv : Bug in the copy constructor
- [8493] Problem to build ViSP as a dynamic library under windows
(Visual C++)
- [8495] Segmentation fault during the execution of the example
grabDirectShow
- [8831] Possible bug when extracting axis/angle from theta/u vector
----------------------------------------------
ViSP 2.4.3 (released April 10th, 2009)
- New Features
- Add vpFeaturePointPolar corresponding the a 2D image point with
polar coordinates visual feature.
- Add vpFeatureTranslation for cto (camera to object translation feature)
- Add vpDisplay::setWindowPosition() functionality
- Bug fixed
- [7281] Segfault when displaying a vpCylinder.
- [7308] Rotation vector not initialized to zero by the default constructor
- [7309] visp-config --cflags produces a bad output
- [7342] Bug in vpRobotAfma6::setVelocity(vpRobot::CAMERA_FRAME, v)
- [7494] Division by 0 in vpHomography
- [7424] Coin3D version 3 not supported under Windows
- [7613] vpSimulator::getInternalImage() function yields to an infinite
loop.
- [7607] vpDisplayGTK bad window positionning
- [7638] Memory leak in all vpFeature... classes
----------------------------------------------
ViSP 2.4.3-rc2 (released January 29th, 2009)
- Deprecated
- Creation of a deprecated section in the online documentation that
gives the list of classes or member function that are deprecated
- vpOSXcfoxGrabber was removed, since the C+Fox third party library
available at http://cfox.sourceforge.net/ was not updated since 2005.
- vpIcCompGrabber was removed, since it uses a home made wrapper based
on itifg-7.2.1 driver which is not maintained yet
- Testing
- Use of CDash insteed of Dart2. Dashboards are sent to
http://cdash.irisa.fr/CDash/index.php?project=ViSP
- Platform compatibility
- Compatibility with g++ 4.3.0 coming with fedora 9
- New Features
- Add visp-config.bat under Windows to get the list of include dirs,
library dirs and libraries ViSP depends on. This may help users to
build a Visual Studio project from scratch and where ViSP is used as a
third party project
- vpFeatureThetaU: Add cRcd feature, with ThetaU corresponding to the
rotation the camera has to achieve to move from current frame to the
desired one.
- vpOpenCVGrabber: New framegrabber based on OpenCV third party library
(useful for USB cameras).
- vp1394TwoGrabber: Get the timestamp associated to the grabbed image.
- vpV4l2Grabber: Get the timestamp associated to the grabbed image.
- vpRobotAfma6 and vpAfma6: Modifications to be compatible with the new
low level Adept controller provided by Cerebellum Automation.
- vpRobotAfma4 and vpAfma4: Modifications to be compatible with the new
low level Adept controller provided by Cerebellum Automation. New
vpServolens class to control the Servolens lens attached to the camera
fixed on the Afma4 end-effector.
- Examples:
- New examples in example/manual described in ViSP guide under preparation.
- example/servo-simu/servoSimu3DCamVelocity2.cpp
- Documentation
- Creation of a deprecated section.
- Classes are now grouped in doxygen modules to help learning ViSP.
- Introduction of new sample examples in the online documentation
- Bug fixed
- [5370] DirectShow and Visual Studio 9 2008 Express
- [5371] Warnings on Visual Studio 9 2008
- [5375] Compilation error in calibrate2dGrid.cpp
- [5398] display cylinder
- [5438] window sizes with Coin
- [5496] Compilation error in example/framegrabber/grab1394.cpp
- [5508] Bug in vpImageConvert::YUV420ToRGB
- [5527] Bug in vpImageTools::changeLUT()
- [5539] Unhandle exception with multi vpDisplayGDI / D3D instances
- [5596] Multiplying a vpRotationMatrix with a vpColVector ?
- [5642] warning in vphomographyvvs.cpp with Visual C++ 2003 .Net
- [5993] vpImage BI
- [6330] Segfault in vpSimulator with Coin + SoXt
- [6336] DLT Homography on 4 points
- [6484] Bug in vpCalibration::calibrationTsai for eye-to-hand calibration
- [6590] vpDisplayGDI cannot handle numerous displays (windows)
- [6619] Problem vpMeLine : compute of delta
- [6743] Bug in vpDisplayOpenCV::displayRectangle()
- [6744] Bug in vpDisplayOpenCV
- [6962] vpMeLine : problem of tracking
- [7034] vpMeLine : Bug when a strip is tracked
- [7126] problem with vpMatrix::eigenValuesByLU()
----------------------------------------------
ViSP 2.4.2 (released March 27th, 2008)
- New classes
- vpCalibration : calibration toolkit for intrinsic and
extrinsic parameters of perspective camera.
- vpXmlParserCamera : Parser xml to read and save camera parameters
from vpCameraParameters class.
- vpHinkley : Hinkley's cumulative sum test computation.
- vpMePath : Tracking of a white curve by using line and parabola
tracker.
- vpKeyboard : Gets a key from the keyboard without waiting for the
enter key.
- vpParallelPort : Parallel port management under unix.
- vpRingLight : Irisa's ring light controller.
- vpKltOpencv : Interface for the KLT (Kanade-Lucas-Tomasi) feature
tracker implemented with opencv.
- New Features
- Bug fix and improvement
- vpCameraParameters : support for radial distortion camera model.
- vpAfma6 : Add a getCameraParameters functionnality
- vpSimulator : either SoWin or SoQt or SoXt is needed to use
vpSimulator class.
- vpDot: setMaxDotSize(double percentage) replace
setNbMaxPoint(double nb) to be less image size dependent.
The maximal dot size is set by default to 0.25% (quarter image size).
setGrayLevelPrecision(double grayLevelPrecision) has been
added for a better management of gray dots detection.
- vpDot2:
Changes in searchDotsInArea() :
The algorithm search now in the bounding boxes of the bad dots.
Bug fixed : we could fall in an infinite loop.
Split accuracy private variable into grayLevelPrecision and
sizePrecision. The gray level min and max are well calculated for
white and black dots.
Add setEllipsoidShapePrecision() to turn on/off and modify the test
related of the geometry of the shape
- vpDisplayX : better management of endianness
- vpDisplayGTK, vpDisplayGDI, vpDisplayD3D, vpDisplayX :
To actually display drawings on the screen, a vpDisplay::flush(I) is
needed. Use it with parsimony : it is time consuming.
- vpDisplayGTK, vpDisplayGDI, vpDisplayD3D :
The behavior of the following methods change to be similar
to vpDisplayX:
. getClick(..., button) : The button used to click is now an output
. getClickUp(..., button) : The button used to click is now an output
Moreover, in vpDisplayGDI, vpDisplayD3D middle button is now managed
- vpDisplayGTK, vpDisplayGDI, vpDisplayD3D :
The usage of display->init(vpImage, int, int); returned a
segmentation fault : bug fixed
- vpDisplayD3D : we couldn't re-use a display after the call of the
function close(vpImage). We had a black image : bug fixed.
- vpDisplay : changes in displayRectangle():an option parameter
fill has been had to precise if the displayed rectangle is filled
or not.
- vpColor : Add orange color.
- vpServo : To fix bug #3528 you should explicitly call vpServo::kill()
in your programs. Otherwise an exception
vpServoException::notKilledProperly is launched by
vpServo::~vpServo() destructor.
- vpMatrix : Change Infinity Norm and Euclidian Norm formula to match with
the standard matrix norms definitions.
Change determinant formula for 3x3 matrices to match with
the standard determinant definition.
- vpImageConvert :
Add IplImage to vpImage and vpImage to IplImage conversion tool.
Add MONO16 to grey (MONO8) conversion tool.
- vp1394TwoGrabber :
Supports libdc1394-2.0.0-rc7 and libdc1394-2.0.1
MONO16 color coding is supported
- Testing and examples:
- example/calibration/calibrate2dGrid.cpp was added
- example/tracking/trackKltOpencv.cpp was added
- example/light/ringLight.cpp was added
- example/tools/parallelPort.cpp was added
- test/video-device/testClick.cpp was added
- test/video-device/testVideoDevice.cpp was added
- test/visual-feature/testFeature.cpp was added
- test/image/testCreateSubImage.cpp was added
- test/camera/testCameraParametersConversion.cpp was added
- Documentation improvement
- vpRobust::MEstimator()
- vpRobotAfma6: example usage of getPosition() was updated
- vpDisplayGDI is included in the doxygen documentation
----------------------------------------------
ViSP 2.4.1 (released May 16th, 2007)
- New classes
- vpRect class for rectangle manipulations, display
- vpHistogram,vpHistogramPeak and vpHistogramValey classes to
handle gray level image histogram
- vpSubPixel for sub-pixel manipulations
- vpMouseButton for mouse click identification
- New Features
- MinGW supported
- ViSP as a third party library in an other project.
It is now possible to use ViSP as a third party project without
installing ViSP by make install. ViSP can now be used
directly from the build dir, or from the install dir, or
from a package (NSIS, ...)
- vpRobotCamera It is now possible to add a sampling time so that
the behavior of this simulated camera is quite realistic. This
sampling time is set by default to 40 ms.
- vpExponentialMap A sampling time was introduced.
- Bug fix and improvement
- vpImage: getWidth() and getHeight() replace getCols() and getRows()
which are now obsolete.
- More restrictive types in vpImage, vpDisplay..., and vp...Grabber
classes: const are added, unsigned int replace int for pixel
manipulations and image or display size.
- In vpDisplay classes:
. vpMouseButton::vpMouseButtonType was introduced to handle
mouse clicks
. vpColor::vpColorType was introduced to handle colors to display
- Simulator functionality based on Coin usage is now available
under windows. It allows the use of vpSimulator class under this
platform.
- Compatibility with Windows platform.
- Reference documentation improvement
- cfox and std namespace were removed. To use cout you need to call
std::cout, std::endl, std::cin ...
----------------------------------------------
ViSP 2.4.0 (released February 6th, 2007)
- New Feature
- add new framegrabber interface for itifg8 driver from Coreco
Imaging Technology (http://sourceforge.net/projects/itifg)
Tested with AM-STD COMP framegrabber board on 2.4 and 2.6
linux kernel (see vpItifg8Grabber).
- add new framegrabber interface and test for firewire 1394
cameras using libdc1394-2.x. Need a newer version than
libdc1394-2.0.0-rc4.
Tested with the svn version of libdc1394-2 and Marlin F033C and
F131B cameras (see vp1394TwoGrabber). Format 7 is supported
in vp1394TwoGrabber.
vp1394Grabber will be obsolete soon.
- Bug fix and improvement
- tests and examples
- Video For Linux Two grabber (see vpV4l2Grabber)
- memory leaks suppression
- works fully under windows
- doxygen documentation
----------------------------------------------
ViSP 2.2.0 (released August 25th, 2006)
- Build
- To increase the code portability, especially under windows),
all the build process is now based on CMake
(see http://www.cmake.org).
- Supported platforms:
Linux, Mac OSX, SunOS: g++ 2.95.3, 2.96, 3.3.x, 3.4.x, 4.1.0)
Windows: MSVC7 (2003.NET), MSVC8 (2005)
- Suppression of autotools support (configure)
- Allows shared library building (.so and .dll)
- New Feature
- add control for Traclabs biclops pan-tilt head
- add control for Directed Perception ptu-46 pan-tilt head
- add vpDisplayGTK display under Windows
- add vpDirectShowGrabber framegrabber under Windows
- add vpDisplayGDI display under windows
- Bug fix and improvement
- vp1394Grabber settings (format, mode, framerate, shutter, gain)
- vpDot (Moment computation)
- some fixes in vpDisplayGTK
----------------------------------------------
ViSP 2.1.1 (released January 6th, 2006)
- New examples
- create an example directory
- add vpDotExample.cpp
- add vpDot2Example.cpp
- add vpPoseExample.cpp
- add 2D0.5.VisualServoingSimulation.cpp
- New Feature
- add this ChangleLog file
- add a vpDisplayGTK class with the GTK2+ window system
- new member function in vpDisplay (_uv)
- add function getInteractionMatrix() in vpGenericFeature
- Specification modifications
- change the vpDot and vpDot2 specifications
- supress demo directory
- Bug fix and improvement
- add a runtime warning when vpGenericFeature is not correctly used
- comment in english in vpDisplayX
- suppress a trace in vpPoseVirtualVisualServoing.cpp
- directory.mk : add -p option to mkdir
- improve XP compatibility
- in vp1394Grabber, latency and memory leaks suppression
- WWW
- add an image sequence to download on the www site cube.tar.gz
---------------------------------------
ViSP 2.1.0 (released October, 24th 2005)