-
Notifications
You must be signed in to change notification settings - Fork 5
/
ChangeLog
684 lines (668 loc) · 34.6 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
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
ViSP
Visual Servoing Platform
Resume of the change log
Copyright Projet Lagadic / IRISA-INRIA Rennes, 2005-2013
http://www.irisa.fr/lagadic
ViSP 2.8.0 (released July 24th, 2013)
- New features
. New camera calibration tool: example/camera_calibration.cpp
- Improvements
. vpV4l2Grabber and vp1394CMUGrabber does no more require a call to
open(I).
. In vp1394CMUGrabber new getters/setters for the framerate, shutter, gain.
It is now possible to change the settings in the acquisition loop.
. An exceptions is throwned when moving-edges are not initialized
(vpMeTracker, vpMeLine, vpMeEllipse)
. In model-based trackers, improve face visibility test using Ogre ray
tracing when faces are concave or not oriented counter clockwise.
. Still in model-based trackers, add functionalities to use clipping planes.
. ViSP can now be used with pkg-config
. New fonctions in vp1394TwoGrabber to turn auto shutter and auto gain
on. Also new getter for auto shutter and auto gain min/max values.
. Support Visual Studio 2012 (MSVC11)
. Introduce C++ visibility support as described here
http://gcc.gnu.org/wiki/Visibility
. Better support of image formats: *.tiff, *.jpeg, *.bmp, *.pbm, ...
- Examples
. Introduction of tutorials as minimalist line by line illustrated examples.
- Bug fixed
. [15404] Segfault in vpMbTracker derived classes around Coin SoDB::init()
and SoDB::finish() usage
. [15410] Robot wireframe simulator hangs
. [15422] Build issues with ffmpeg 1.0.1 third party
. [15475] Segfault in cv::Mat(BGR) to vpImage(grey) conversion
. [15522] Visibility tests issues in Model-Based Tracker using Ogre3D
. [15566] Bad mask orientation when using model-based tracker with
cylinders
. [15587] visp-config conflicts with multiarch support on Debian
. [15623] Possible ViSP-2.7.0 bugs detected by cppcheck
. [15644] crash with vpRobotWireFrameSimulator::initScene()
. [15679] vpDot and vpDot2 copy operator are incomplete
. [15680] Bad pixel to meter conversion in vpFeatureLuminance
. [15697] False positive exception in vpDisplay when vpDisplay::close()
is used
. [15730] ViSP-third-party.txt is installed in a wrong location
. [15896] Ogre Boost components miss Boost.Filesystem
. [15895] ViSP does not compile on FreeBSD (amd64 / i386)
----------------------------------------------
ViSP 2.7.0 (released February 11th, 2013)
- New features
- New vpViper650 and vpRobotViper650 classes to interface Inria's new
Adept Viper s650 robot.
- New robot simulators; vpSimulatorCamera, vpSimulatorPioneer,
vpSimulatorPioneerPan
- New model-based tracker using KLT points: vpMbKltTracker.
- New hybrid model-based tracker using moving edges and KLT points:
vpMbEdgeKltTracker
- Improvements
- Add visp-config.1 man page.
- To respect Debian guidelines, remove duplicate ABI version.
Library name was set to libvisp.a or libvisp.so.2.7.0 rather than
libvisp-2.a or libvisp-2.so.2.7.0
- Fix typos detected by lintian
- Add support for multiarch. Multiarch is the ability for a library
to be installed concurrently for differents architectures (such as
i386 and amd64 for instance). In practice, the changes removes the
assumption made that libraries are installed in $INSTALL_PREFIX/lib and
binaries in $INSTALL_PREFIX/bin.
- In vp1394TwoGrabber that allows to grab images from firewire cameras,
cameras are powered off when the grabber is closed.
- MinGW is now supported but since MinGW currently doesn't support tls
__declspec(thread) with vpDisplayGDI it is possible to open only
one display.
- To better organise the code, robot simulators inherit from
vpRobotSimulator class. Introduction of a new vpRobotWireFrameSimulator
class as a base class of robot simulated using the wireframe display
capabilities.
- VRML loader (based on Coin3D) now reads transform nodes and hierarchical
scenes.
- If Ogre3D is used, model-based trackers use now RayCasting to improve
faces visibility test.
- Compatibility with iOS 6 and Fedora 18
- Examples
- New model-based tracker examples to show how to use the KLT and hybrid
tracker. See in example/tracking mbtEdgeKltTracking.cpp and
mbtKltTracking.cpp
- Bug fixed
- [14646] ViSP doesn't build on Windows with MinGW
- [14651] Build error arround vpMatrix::pseudoInverse() with OpenCV 2.1.0
- [14661] Build error when GDI is not detected or turned off
- [14818] Build error when only GTK display device is available
- [14862] Lagrange pose estimation cannot handle planar objects with
points in plane oX=d or oY=d
- [14863] vpPose::poseRansac() can fail during Lagrange pose estimation
- [14993] Segfault in mbtTracker example when only the cube is tracked
- [15049] In vpFeatureSegment, bad interaction matrix associated to
alpha angle
- [15110] Segfault in ffmpeg video reader
- [15291] Under Windows, the end of an image is not displayed
----------------------------------------------
ViSP 2.6.2 (released July 15, 2012)
- New features
- New vp1394CMUGrabber class that allows firewire frame acquisition
under Windows using CMU 1394 Digital Camera 3rd party library.
Thanks to Lucas Lopes Lemos and Guillaume Laurent from FEMTO-ST,
AS2M departement, Besancon, France for this contribution.
- New vpPioneer, vpPioneerPan, vpRobotPioneer classes to control Pioneer
mobile robots using Aria 3rd party library.
- New vpFeatureSegment class to consider a segment as a visual
servoing feature. Normalized and non normalized features are considered.
- New vpFeatureMomentArea class to consider moment area as a visual
feature.
- Introduction of new functionalities in vpIoTools to parse text
config files
- Introduction of YARP to ViSP image converters in vpImageConvert
- New vpClient and vpServer classes for a multiclients TCP network.
- New vpPoseFeatures class for pose computation from any visual features.
To be able to consider other user defined features the compiler should
be compatible with C++ 11 standart.
- Improvements
- Introduce a new Denavit Hartenberg representation of the Biclops head
in vpBiclops.
- Compatibility with g++ 4.7 and OpenCV 2.3.1, 2.4.0, 2.4.1
- Remove warning detected with Visual C++ /Wall flag
- Use CMake native package finder for zlib, png, jpeg, coin3d, gtk2 and
doxygen 3rd party libraries detection. If detection fails, we use our
own package finder.
- Under Windows, changes done to add "d" suffix to the library name when
build in debug (libvisp-2d.lib and libvisp-2d.dll). Install stage
copy libvisp-2[d].lib in $CMAKE_INSTALL_PREFIX/lib and libvisp-2[d].dll
in $CMAKE_INSTALL_PREFIX/bin.
- Use OpenMP to optimize the execution of the moments computation.
- Possibility to compute the covariance matrix during pose estimation
(vpPose and vpPoseFeatures) and model-based tracking (vpMbTracker).
- All initClick() now have a non-blocking equivalent as initFromPoints(),
or initFromPose(), etc.
- Most of the classes that had a display() method now have the equivalent
display in static function (display's externalisation).
- Ransac is now improved for either pose computation or point matching.
- Examples
- New example plot3d.cpp to show how to plot 3D curves
- New example movePioneer.cpp to illustrate Pioneer velocity control.
- New example sonarPioneerReader.cpp to illustrate Pioneer sonar device
usage.
- New examples servoPioneerPoint2DDepth.cpp,
servoPioneerPoint2DDepthWithoutVpServo.cpp and
servoPioneerPanSegment3D.cpp
to show how to control the pioneer mobile robot by IBVS.
- New example grab1394CMU.cpp to show how to acquire images with
the CMU 1394 library.
- Bug fixed
- [13536] Division by zero in vpMeLine
- [13548] ViSP-2.6.1 produces several warnings with g++ 4.4.3, a const
is missing in vpMbtDistanceLine.h
- [13575] ViSP sporadic segmentation fault in vpMeLine
- [13625] trackMeNurbs example produce an assertion failed with MSVC:
"list iterator not incrementable"
- [13626] testXmlParser produre a Debug assertion failed with MSVC
- [13678] Cannot build all the examples if no display capability is
available
- [13679] GDI not detected on Windows 7 (64 bit) with Visual C++ Express
2010
- [13689] Memory leaks in jpeg reader: vpImageIo::readJPEG()
- [13690] Memory leaks in NURBS tracker
- [13843] In vpPolygon, isInside() may produce a segfault and getArea()
or getCenter() give bad results
- [13850] visp-config.bat produces a non compatible msvc 2010 output
format
- [13955] vpBasicFeature::error() is not virtual
- [13963] Under Windows, vpDisplay::getClickUp() doesn't work
- [14081] Error in vpThetaUVector when angles are near 180 deg +/- epsilon
- [14082] Segmentation fault in model based tracking when tracking only
cylinders
- [14474] Fix race condition in vpXmlParser.
- [14481] testFeatureSegment can lead to an exception.
- [14587] Ogre media directory OGRE_MEDIA_DIR not set in Ubuntu 12.04
- [14588] vpConfig.h doesn't match with the install directory
----------------------------------------------
ViSP 2.6.1 (released October 20th, 2011)
- New features
- Introduction of Lapack support used for the SVD decomposition in vpMatrix
- Introduction of vpAROgre that enables augmented reality applications
based on Ogre 3D. Some examples are provided in examples/ogre-simulator
- Add cylinder's tracking in the model-based tracker.
- Reintroduce OpenCV 2.0.0 support lost in ViSP 2.6.0
- Introduction of vpKinect, a wrapper of libfreenect to support the
Kinect device
- Introduction of vpMoment and vpFeatureMoment classes to be able to
consider 2D image moments as visual feature in visual servoing
- Improvements
- For firewire cameras framegrabbing with vp1394TwoGrabber, it is now
possible to select a specific camera with its GUID by using setCamera()
- All the specific Xml parser (vpMbtXmlParser, vpXmlParserCamera)
inherit now from vpXmlParser
- Memory leaks suppression in vpWireFrameSimulator, vpMe, vpXmlParser,
vpMbtXmlParser, vpXmlParserCamera, vpMbTracker, vpFeatureLuminance,
vpRobotSimulator, vpFFMPEG, vpBSpline
- It is now possible to grab images from an usb webcam with the
vpV4l2Grabber class that is based on the video 4 linux 2 driver.
- When it was possible without braking the backward compatibilty
std::list was introduced instead of vpList. Some of the functions that
use vpList are now deprecated.
- Better detection of image or video file types when used in vpImageIo,
vpVideoReader and vpVideoWriter
- Build
- Set the build type by default to release
- Improve the usage of debug versus release third-party libraries
- Deprecated
- vpAdaptativeGain is deprecated. Use vpAdaptiveGain instead.
- vp1394Grabber is deprecated. Use vp1394TwoGrabber instead.
- Most of the methods that use vpList are deprecated. Use std::list instead
- vpTwistMatrix deprecated in ViSP-1.6.0 was removed.
- Examples:
- New example grabOpenCV-2.cpp to show how to use the OpenCV
cv::VideoCapture class. This example shows how to acquire an image
with cv::VideoCapture, how to transform this image in ViSP format
and how to display it.
- New examples to illustrate the usage of the Ogre simulator through
vpAROgre class.
- New example to illustrate the usage of the Kinect through
vpKinect class.
- New examples to illustrate the usage of 2D image moments.
- Bug fixed
- [11110] On OSX vpDisplayOpenCV does not display images since OpenCV 2.1.0
- [11147] Coin not installed, cannot read VRML files
- [11473] vpImageTools::flip() come out error when deal with vpImage
with vpRGBa type
- [11529] ViSP / OpenCV(2.2.0) incompatibility
- [11563] segfault in vpVideoReader
- [11617] selecting a subset of features is not taken into account in
vpServo
- [11916] Build issues with GTK2 on ubuntu 10.10 (fatal error:
gdk-pixbuf/gdk-pixbuf.h)
- [11924] svdNr fails on some matrices where svdGsl succeeds
- [11942] Build issues with GSL on OSX due to 32/64 bits architecture
- [11943] Build issues with libjpeg on OSX due to 32/64 bits architecture
- [11944] Build issues with libpng on OSX due to 32/64 bits architecture
- [11981] vpV4l2Grabber class based on video 4 linux 2 is not able to
grab images from an usb webcam
- [12329] Bad font problem when opening vpPlot example
- [12334] Under windows, link errors when some 3rd party libs are not
build in the same build configuration as ViSP
- [12499] servoSimu4Points: World point disposition does not match camera
- [12591] Seg fault when using setCleanPreviousImage() from
vpImageSimulator
- [12739] Problem initialising a vpMeEllipse
- [13014] Bug in vpCalibration::calibVVSMulti() jacobian
- [13015] vpFFMPEG compatibility issue with ffmpeg-0.8 release
- [13449] "LIBJPEG_BUILD_TEST - Failed" message in CMake for Visual 2010
- [13467] CreateWindow windows API does not correctly register class.
----------------------------------------------
ViSP 2.6.0 (released September 23rd, 2010)
- License:
Change the open source license from QPL to GPL v2
- New Features
- Introduction of a new wireframe simulator. See vpWireFrameSimulator class.
- Introduction of a new model-based tracker that allows to track
an object based on its 3D model. See vpMbEdgeTracker class.
- New vpForceTwistMatrix class that allows to transfer a force/torque skew
from one frame to another.
- New vpVelocityTwistMatrix class that allows to transfer a velocity skew
from one frame to an other. The vpTwistMatrix class that does the same
work previously is from now deprecated.
- New vpRobotCycab class to communicate with the Cycab car-like mobile
robot at Inria.
- New generic vpRobotSimulator class to create robot simulators.
- New vpSimulatorViper850 class which simulates the viper850 robot.
- New vpSimulatorAfma6 class which simulates the Afma 6dof robot.
- New vpPlanarObjectDetector class to detect a planar surface based on
the Ferns Classifier.
- New vpSickLDMRS class, a UNIX driver to get measures from a Sick LD-MRS
laser scanner.
- New vpPlot class that was recoded to suppress the XPlotter dependency.
This class aims real time drawing of 2D or 3D graphics under Linux, OSX
and Windows.
- Third party library dependencies
- OpenCV 1.1 and 2.0 are no more supported. ViSP requires at least
OpenCV 2.1.
- libplotter is no longer required.
- Itifg8 is no longer supported.
- Improvements
- Copy constructors were added to better support stl lists and vectors.
- 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)
. new setIsoTransmissionSpeed(), setAutoShutter() methods
- In vpThetaUVector addition of &operator=() method to initialise all the
angles to the same value
- In vpHomogeneousMatrix addition of
. eye() method to set the transformation as identity
. extract(vpThetaUVector &) to extract the rotation as a Theta U vector
- In vpRobotViper850 add openGripper() and closeGripper() functions to
control the Schunk two fingers electric gripper (available only at
Inria).
- In vpRotationVector and vpTranslationVector introduction of set()
method that allows initialization from 3 doubles
- Documentation improvements
- Deprecated
. Some deprecated classes were removed: vpItifg8Grabber,
vpEulerVector, vpSubPixel, vpRA
. Deprecated functions since ViSP 2.4.4 where also removed
- Examples:
- New example calibrateTsai.cpp to show how to use the vpCalibration
class to estimate the hand to eye transformation.
- New examples to illustrate the usage of the new wire-frame simulators
- Bug fixed
- [9476] Memory leak in vpImageIo::readPNG() functions.
- [9505] Problem with the DirectShow grabber : can't be initialised.
- [9516] Problem in the getValue methods in the vpImage class.
- [9746] The displayPoint method of the vpDisplayOpenCV class doesn't work.
- [10472] Bug in the visual features: can't select the good feature.
- [10647] Delay in displaying image overlays
- [10687] The GDI display is not detected with Visual Studio 2010
- [10696] [CMake] VISP_DIR path conflict
- [10697] CMake standard output vars
- [10719] Compilation error in vpPlot
- [10723] Compilation error in vpFFMPEG.cpp
- [10748] PThread and Win32 Conflict
- [10928] vpPlane: rayIntersection from 2 points
- [10985] In vpPlot, 2D curve plotting starts with point (0,0)
and not with the first specified point.
----------------------------------------------
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)