As an experiment you can also test the camera simulator (just added in 0.8.22). From the Camera tab, click on "Manual connection" button. In the "Type of camera" combo, choose "Camera simulator" and click "Create camera". Create two of them and go into dual camera mode.

From their configuration you can set them to HD 720 @ 30fps for example, and see if the framerate stays stable, with and without recording.

Hi,
I would say this indicates that the dual recording is too CPU intensive and both playback and recording can't happen in real time.
Can you try with two webcams of different models ? There might be an additional complication with using two cameras of the same model.

843

(9 replies, posted in General)

Distortion correction in action in a less rigorous setting.

http://www.kinovea.org/screencaps/0.8.x/lensdistortion/distortedsquash.jpg
Fig 1. Plane mapping on a video from a different camera and at different resolution than the camera used to compute the distortion coefficients.

Here for example I have downloaded a squash video off YouTube in a crappy resolution (426×240). The only thing I know about the video is that it was filmed with a GoPro at the "Wide" setting (170°).

I imported distortion coefficients from my own camera and added a grid tool (in green) simply placing its four corners at field marks. Even though the cameras used are not the same, the grid tool can still be used if the required accuracy is not down to the centimeter. For example coordinates of points on the grid could be used to create a heat map of foot positions (and see how "hot" is the T for a particular play).

For better accuracy the calibration should be done on the same camera. The assembly process introduces small differences from one camera to another.

844

(9 replies, posted in General)

More progress, almost done:

http://www.kinovea.org/screencaps/0.8.x/lensdistortion/distortedcoordinatesystem-s.png
Fig1. Final coordinate system with perspective and distortion correction.


http://www.kinovea.org/screencaps/0.8.x/lensdistortion/cameracalibrationdialog.png
Fig 2. The camera calibration dialog. Here the coefficients correspond to a GoPro Hero 2 in Medium mode (127°).


Basically there are two ways to get the distortion coefficients. Both imply filming a checkerboard like pattern, then:

  • In Kinovea, by creating several "Distortion grids", positionning them manually and then clicking "Calibrate camera" in this dialog.

  • By using Agisoft Lens (freeware), importing the images and performing the (automated) calibration there. Then by importing the resulting XML file in Kinovea through this dialog.

This is a one-time-per-camera operation.

The "Image" tab shows a rectified version of the current image, however it is for ballpark verification, there is currently no plan to provide real time image rectification.

I'll describe in more details later how I verify that the lens distortion and perspective correction are correct.

845

(12 replies, posted in Cameras and hardware)

Unfortunately I never had the chance to play with an HDV camera, so I never tested this first hand. I read here and there that grabbing the HDV stream in DirectShow is more involved than for DV, so I'm not convinced it ever worked.
If anyone has a working setup streaming HDV through Firewire in Kinovea please report.

846

(1 replies, posted in Cameras and hardware)

The most probable cause is that the streaming format is not supported. At the moment the number of supported formats for network streams is rather limited: only MJPEG and JPEG.
If you want you can try to get it to work in "iSpy" and/or "VLC" and report which type of connection worked.

847

(9 replies, posted in General)

I am making a rather large detour through projective geometry, homogenous coordinates and line clipping algorithms to fix the rendering of the coordinate system related to the plane calibration. Since the plane and the origin are user-defined, there is plenty of room for awkward cases and unusual sizes or orientations.

http://www.kinovea.org/screencaps/0.8.x/lensdistortion/projective-plane-0.8.22b.png
Fig 1. 0.8.22, with an example of a completely broken rendering of the coordinate system: Visible vanishing point, lines behind the camera projected above the horizon, limited extension of the grid on the plane yielding mostly empty space.

http://www.kinovea.org/screencaps/0.8.x/lensdistortion/projective-plane-0.8.23b.png
Fig 2. 0.8.23, better rendering of the same coordinate system. (No 3D framework involved, pure projective geometry).

Hi,
Once you have done the calibration in the first video, you can save the corresponding KVA file from the save menu.
You can then import it to other videos from the "Load Key images data" menu. It will import the calibration.

Optional:
If the camera is completely fixed and you only work with videos from this camera, you can have this calibration file automatically imported on every video you open.
To do this you must rename the KVA to "playback.kva" and store it in the %appdata% directory. (For example : "C:\Users\joan\AppData\Roaming\Kinovea"). To stop using it, delete or rename the file.

Additional notes:
- You can safely delete the line that was used to create the calibration in the first place, it will not kill the calibration.
- It will work for plane calibration as well.
- When importing on a video of different resolution, the calibration is "adapted" to the target file.

849

(2 replies, posted in Français)

Le seul moyen à ma connaissance est d'installer une carte d'acquisition HDMI sur le PC.

850

(9 replies, posted in General)

"4. Usage of the distortion parameters to compute undistorted coordinates and usage of these coordinates to make all measurements in Kinovea."

Some measurements done filming the checkerboard pattern "roughly" orthogonal to the camera axis. Pictured lines, spanning 5 squares, are ±1% from each other in measured length (still true close to the border of the image).
http://www.kinovea.org/screencaps/0.8.x/lensdistortion/calibrated.png

For comparison, the same lines without lens distortion calibration :
http://www.kinovea.org/screencaps/0.8.x/lensdistortion/uncalibrated.png
(Lines at the edges of the image go down to 50% of their ground truth.)

For this test lens distortion coefficients were computed in an external (free) application and imported automatically. The geometric calibration used a grid spanning 10 squares and marked as 200% in length.

851

(9 replies, posted in General)

"2. A module to compute lens distortion parameters based on the distortion grids you added throughout the video."

Distortion map computed using data from the grids added the video of the previous snapshot.

As a vector field:
http://www.kinovea.org/screencaps/0.8.x/lensdistortion/vectorfield-small.png

As a distortion grid:
http://www.kinovea.org/screencaps/0.8.x/lensdistortion/distortiongrid-small.png

GoPro Hero 2 at 1920×1080@30fps (170°). Calibration used 5 sets of 25 points fed to OpenCV's cvCalibrateCamera2 to compute the distortion coefficients and camera intrinsics parameters. The distortion grid is drawn using the direct equations to distort back the coordinates.

852

(10 replies, posted in General)

Hello,
Yes I did not add any new arrow tools in this version.
I want to focus on the quantitative analysis aspects for a while before returning to presentation features.
I keep them in mind though.

The first two topics I will likely work on for 0.8.23 are :
1. A "data analysis" window to review kinematics data : trajectory plots, projective view of points and lines on the plane, possibly a heatmap style plot, possibly an angle/angle or angle/angular velocity diagram for coordination analysis. With facilities to export the filtered values and the resulting plots.
2. Lens distortion compensation for measurements, with import/export of distortion profiles and distorted view of the coordinate systems.

I also want to do some research on time distortions (e.g: rolling shutter), camera pose estimation, frontal area computation, time of flight cameras, etc.

853

(0 replies, posted in Français)

Version expérimentale, merci de remonter toutes les regressions éventuelles !

Installeur: Kinovea.Setup.0.8.22.exe

Le topic annonce sur le forum anglais.

854

(10 replies, posted in General)

Experimental version, feedback needed ! wink
Beware of regressions and report anything suspicious. Do not assume the issue is known.

Installer: Kinovea.Setup.0.8.22.exe

Highlights:

General

  • New locales : Japanese, Serbian Cyrillic and Macedonian.

  • Autosave and crash recovery mechanism.

  • Better video quality when saving.

  • Drag & drop KVA file on top of video.

Trajectories

  • Tracking parameters can be changed manually from the configuration dialog.

  • Subpixel accuracy everywhere.

  • 2D Kinematics: velocity per components, acceleration, coordinates.

  • Angular kinematics through "best fit circle" of trajectory.

  • Filtering of kinematics data through a Butterworth filter with autoselection of cutoff frequency.

  • Tracking data for trackable drawings is saved to KVA file.

Other

  • The coordinate system display will work in perspective when using plane calibration.

  • The synchronization logic has been rewritten and many bugs with regards to synchronization or dual saving should be fixed.

  • Many bugs have been hunted down and fixed, entire parts rewritten to be more testable and new tests designed. A special effort went into this release to improve the internal and external quality of the software as it is more and more used in sport science classrooms around the World. If you find an issue, please report it immediately, on the bug tracker (preferred), here on the forum, or by email.

The raw changelog is here.

Thanks!

----
Some screencaps:

The new trajectory configuration dialog with tracker parameters:
http://www.kinovea.org/screencaps/0.8.x/0822-configure-trajectory.png


Best-fit circle on rotative trajectory:
http://www.kinovea.org/screencaps/0.8.x/0822-bestfit-somersault.png


Perspective coordinate system:
http://www.kinovea.org/screencaps/0.8.x/0822-coordinatesystem.png

Link to website : http://slowmovideo.granjow.net/

This is definitely something to check out and experiment with. It will compute the optical flow of the scene and interpolate frames between the existing ones to create a fluid slow motion effect.

The graph editor requires some trial and error as it's very generic and defaults to segments instead of curves. You can basically map the input time (vertical axis) to the output time (horizontal axis) in any way you want, to create slow, static, fast, reverse motion.

Got it to crash a few times so definitely save your project often smile

I don't know if it would be useful to have this type of slow motion at analysis time since the frames are built from scratch and will not give you any information you are missing. For qualitative analysis it may be more pleasing to watch and help feeling the movement better. For export purposes it would be very nice to warp time around the key images in the time freeze export for example.