I have been using DeepLabCut on human eye videos in order to measure pupil dilation, marking 8 points around the pupil. For most steps of the process, this has worked well. My training data set consisted of 160 frames and I trained up till 625,000 iterations. Pixel error was under 1. I then analyzed the videos.
However, when creating the labelled videos, I noticed a consistent offset in the points labelled on the videos. The labelled points were all slightly shifted on the y-axis, as can be seen in the screenshots below. The 8 points do accurately track the pupil, both its movements and dilations, but there is a clear movement of all the points along the y-axis.
I checked to see if this shift along the y-axis was consistent by comparing the csv file with the coordinates for the labels on the frames I had manually labelled for the training set with the corresponding coordinates for those exact frames from the DLC output. What I found was that there was a consistent shift along the y-axis for all of the labeled points. That is, the points were being accurately tracked and identified, but had been moved up by some pixels on the Y-axis. The screenshot of the csv file below shows the difference between my labelled point and the point labelled by DLC. For the x-axis coordinate, there are no issues (a difference of hardly a pixel or two, which is to be expected) however with the y-axes, there is consistently a shift by around 45 to 47 pixels.
This offset is present in all of the videos I have analyzed and labelled. I can’t seem to figure out why this is happening, and was wondering if there is some error I am making or if this is an issue that someone else has run into before?
In case it is relevant, I set cropping parameters for the videos during the extraction step, and the videos were .mp4.