Giter Site home page Giter Site logo

tGrabs says video is empty about trex HOT 34 CLOSED

mooch443 avatar mooch443 commented on May 28, 2024
tGrabs says video is empty

from trex.

Comments (34)

mooch443 avatar mooch443 commented on May 28, 2024 1

I think this week seems realistic :-) I am currently just running tests and fixing some visual bugs. Will keep you posted!

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

This could have likely been an instance of a nullpointer that wasn't checked. Should be fixed with the next release. Thank you for the report!

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Getting a similar case sometimes, but seemlingly only for a really short (5 sec) video and not 4-12h ones, e.g.:

[16:01:06] pv::File<V7, 921.67KB, '/Users/roaldarbol/tracking/trex/experiments/2022-02-01/videos_pv/2022-02-01_16.39.58_vid1', [1280 x 720], 0 frames, no mask>

crop_offsets: [0,0,0,0]
Time of recording: 'Wed Feb  2 16:01:06 2022'
Length of recording: '00d:00h:00m:00s'
Framerate: -1fps (0ms)

Metadata empty.
[16:01:06] Property<float>('gui_interface_scale') = 1
[16:01:07] Creating images.
0   TGrabs                              0x000000010de8ee2e _ZL9dumpstackv + 46
1   TGrabs                              0x000000010de864ca _ZL14signal_handleri + 810
2   libsystem_platform.dylib            0x00007fff20472d7d _sigtramp + 29
3   ???                                 0x0000000000000000 0x0 + 0
4   TGrabs                              0x000000010de6d853 _ZN4grab3GUI11update_loopEv + 371
5   TGrabs                              0x000000010de8b2f2 main + 19522
6   libdyld.dylib                       0x00007fff20448f3d start + 1
7   ???                                 0x0000000000000009 0x0 + 9
FATAL: Segmentation Fault. Logged StackTrace
libc++abi: terminating with uncaught exception of type cv::Exception: OpenCV(4.3.0) /Users/tristan/opt/miniconda3/envs/trex/conda-bld/trex_1642026671057/work/Application/build/opencv/src/CustomOpenCV/modules/core/src/ocl.cpp:4867: error: (-215:Assertion failed) u->refcount == 0 && "UMat deallocation error: some derived Mat is still alive" in function 'deallocate'

Converted /Users/roaldarbol/tracking/trex/experiments/2022-02-01.
/Users/roaldarbol/Downloads/2022-02-01_16.39.58_vid1.mp4
Using conda prefix '/opt/anaconda3/envs/tracking/bin/'.
Calling '/opt/anaconda3/envs/tracking/bin/TRex.app/Contents/MacOS/TRex -d /Users/roaldarbol/tracking/trex/experiments/2022-02-01/results -i ../videos_pv/2022-02-01_16.39.58_vid1.pv -s /Users/roaldarbol/tracking/trex/trex_beetles.settings -log_file track_2022-02-01_16.39.58_vid1.log -track_max_individuals 1 -auto_quit -auto_no_results'...

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

I am looking into this at the moment, just so you know. I have an explanation for the short videos (namely that, at least in my current dev version) sometimes more or fewer frames are getting into the final video (we are talking like max. ~10 frames here).

But the error you have there is part of the GUI and should be fixed (6279d0e) once I finish my updates. v1.1.7 will take some time, because it ships a lot of internal changes, but I am working hard on it :-) At least the code will be much nicer (which nobody other than me cares about)!

If this is currently a breaking thing for you, you can try compiling the dev-branch (at your own risk).

from trex.

StefanMPopp avatar StefanMPopp commented on May 28, 2024

Thanks so much for this info! I was already periodically checking if the update was already up. Can you give a rough eta of it? If it's still a few months out, it might be worth trying the dev-branch.

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Not sure you have seen, but I updated the software recently. Let me know if it does/doesn't work for you :-)

from trex.

StefanMPopp avatar StefanMPopp commented on May 28, 2024

Thanks for the notification!
I have updated the tracker, but the problem persists, with a wonky length of recording (the input video is in fact 30min long):

...
[EXCEPTION 19:26:26 GLImpl.cpp:94] Cant find application icon 'gfx/TGrabsIcon64.png'.
[19:26:26] Creating queue...
[19:26:26] Done. -1
[19:26:26] pv::File<V7, 8.29MB, '/home/stefan/Desktop/2020_clone/tGrabOut/HRM_T2_NE06', [3840 x 2160], 0 frames, no mask>

crop_offsets: [0,0,0,0]
Time of recording: 'Wed Mar 16 19:26:26 2022'
Length of recording: '1619d:19h:09m:21s'
Framerate: -1fps (0ms)
...

Let me know which information you need and I'll be happy to help how I can.

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Just updated (well, reinstalled as I had to reinstall everything conda...) to trex 1.1.8.
Now I'm getting something very similar for a 12h video:

...
! OPENCV warning: getUMat()/getMat() call chain possible problem.
!                 Base object is dead, while nested/derived object is still alive or processed.
!                 Please check lifetime of UMat/Mat objects!
[WARNING 22:50:33 grabber.cpp:1425] Copying average to GPU.
[22:50:33] Copying _original_average (1280x720) back to _average and preparing...
[22:50:33] cam_scale = 1
[22:50:33] Copying _average 1280x720
[22:50:33] --- done preparing
[22:50:33] Creating queue...
[22:50:33] pv::File<V7, 921.67KB, "/Users/roaldarbol/tracking/trex/experiments/2022-03-09/videos_pv/2022-03-09_13.59.11_vid1", [1280,720], 0 frames, no mask>

crop_offsets: [0,0,0,0]
Time of recording: 'Fri Mar 18 22:50:33 2022'
Length of recording: '00d:01h:15m:41s'
Framerate: -1fps (0ms)

Metadata empty.
...

This doesn't matter to me too much, but it also seems that performance has decreased dramatically. I used to run TGrabs at around 250fps on my Mac, but now it's running at max. 90fps. I'll update once I've run it a bit more, but also happy to test out more if needed.

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Hey,

@StefanMPopp So first of all I released a version 1.1.7 which I had to retract - so probably should update again (sorry). Let me know if this helps, or if you are seeing the same issue. If so, is it reproducible/always empty?

Now to 118: interesting. Compared to which version is it much slower? I have had a similar decrease in performance and simply deactivate and reactivate of the environment somehow fixed it for me. Not sure what happened there.

Next, the empty video does not seem to have a problem though that it find's on your side. Whereas the other Problem report seems connected to a crash that does not happen anymore on my side with 118. Does your video have a size on the file browser? Also, are there individuals / frames actually processed? It seems that it just ends, or no objects are found. And is this reproducible?

Thanks!
Tristan

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Thanks for the quick reply! My reinstallation was not due to TRex, just having multiple anaconda installations and a lot of path issues. ;-)
The current videos track just fine - just much slower. Just thought it might be part of the same story.
Trying again I got additional errors:

[WARNING 23:06:31 grabber.cpp:1425] Copying average to GPU.
[23:06:31] Copying _original_average (1280x720) back to _average and preparing...
[23:06:31] cam_scale = 1
[23:06:31] Copying _average 1280x720
[23:06:31] --- done preparing
[23:06:31] Creating queue...
OpenCV(4.3.0) Error: Assertion failed (!f.fail()) in readUInt32, file /Users/tristan/opt/miniconda3/conda-bld/trex_1647559174481/work/Application/build/opencv/src/CustomOpenCV/modules/core/src/ocl.cpp, line 597
OpenCV(4.3.0) Error: Assertion failed (!f.fail()) in write, file /Users/tristan/opt/miniconda3/conda-bld/trex_1647559174481/work/Application/build/opencv/src/CustomOpenCV/modules/core/src/ocl.cpp, line 815
OpenCV(4.3.0) Error: Assertion failed (!f.fail()) in write, file /Users/tristan/opt/miniconda3/conda-bld/trex_1647559174481/work/Application/build/opencv/src/CustomOpenCV/modules/core/src/ocl.cpp, line 815
OpenCV(4.3.0) Error: Assertion failed (!f.fail()) in write, file /Users/tristan/opt/miniconda3/conda-bld/trex_1647559174481/work/Application/build/opencv/src/CustomOpenCV/modules/core/src/ocl.cpp, line 815
OpenCV(4.3.0) Error: Assertion failed (!f.fail()) in write, file /Users/tristan/opt/miniconda3/conda-bld/trex_1647559174481/work/Application/build/opencv/src/CustomOpenCV/modules/core/src/ocl.cpp, line 815
...

Deactivating and reactivating the environment makes no difference for me. Very odd.

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Hm. Are you sure this is a new version? OpenCV 4.3.0 is not in use and has not been for a long time. Either your paths are weird, or I made a mistake with my build, or this is an old version! I am using OpenCV 4.5.5 statically linked.

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Good question. The trex version is definitely 1.1.8, confirmed with conda list in a fresh environment. Do you know how I can check my OpenCV installation? It might be because I've changed from using the built-in MacOS Python to using anaconda's install as my default.

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Check if you have any environment variables pointing anywhere - like in PATH or something like that. Although I am worried how they could get in there anyway, since its a static link (does only depend on the ffmpeg extension of OpenCV, not any other DLLs). If you use Anaconda Powershell (which you should), you can enter:

echo $Env:PATH

also python -c "import sys; print(sys.version,sys.executable)"

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Oh, sorry - is this macOS? @roaldarbol

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Yup, MacOS.
Outside the env I get

python -c "import sys; print(sys.version,sys.executable)"
3.9.7 (default, Sep 16 2021, 08:50:36) 
[Clang 10.0.0 ] /usr/local/anaconda3/bin/python

and inside the env I get

python -c "import sys; print(sys.version,sys.executable)"
3.7.11 (default, Jul 27 2021, 07:03:16) 
[Clang 10.0.0 ] /usr/local/anaconda3/envs/tracking/bin/python

I think it is due to reinstalling anaconda - I've just installed opencv with homebrew which is v4.5.5, confirmed by brew info opencv:

opencv: stable 4.5.5 (bottled)
Open source computer vision library
https://opencv.org/
/usr/local/Cellar/opencv/4.5.5 (861 files, 239.5MB)
  Poured from bottle on 2022-03-18 at 23:25:54
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/opencv.rb
License: Apache-2.0
==> Dependencies
Build: cmake ✘, pkg-config ✔
Required: ceres-solver ✔, eigen ✔, ffmpeg@4 ✔, glog ✔, harfbuzz ✔, jpeg ✔, libpng ✔, libtiff ✔, numpy ✔, openblas ✔, openexr ✔, protobuf ✔, [email protected] ✔, tbb ✔, vtk ✔, webp ✔
==> Analytics
install: 16,839 (30 days), 54,069 (90 days), 189,625 (365 days)
install-on-request: 16,249 (30 days), 51,816 (90 days), 181,741 (365 days)
build-error: 103 (30 days)

So I guess if I can add /usr/local/Cellar/opencv/4.5.5 to PATH as OpenCV installation, I'll be fine... question is how.
Sorry, this might not really have anything to do with TRex after all. :P

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Alternatively, there's conda install -c conda-forge opencv - in base or tracking env?

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Oh my, independently of possible PATH issues: I seem to have ALWAYS built OpenCV in Debug mode. Fixing this immediately.

So... regarding the empty video issue (the actual topic here, we digress):
Does this happen all of the time? You said just with ... older videos? Some? If you have something that reproducibly yields empty videos, I'd love to know. I thought I'd have fixed those issues. In all of my tests I have been consistently getting the same number of frames now all of the time. :/

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Haha, at least we're uncovering some things. :P Last OpenCV questions: How do you have it installed? As an environment or a global installation? And as a pip installation? With conda?

Regarding what I just reported - this is fresh off the block. But I tried a few different videos, all 12h long and it consistently said 1h something and Framerate: -1fps. The videos were from last week, and I've been analysing most days for the past 2 months without issues, so it's new, since today. The question is whether this couldn't also be due to my opencv trouble and not due to the new trexversion.

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Alternatively, there's conda install -c conda-forge opencv - in base or tracking env?

conda-forge installs 4.5.4 (so not 4.5.5), but the performance is still off.

[23:55:04] Reusing previously generated average.
draw_transform(3x3, CV_32F) = 
[	2852.866943	0.000000	618.613525	]
[	0.000000	2847.082275	682.512146	]
[	0.000000	0.000000	1.000000	]

cam(3x3, CV_32F) = 
[	2945.089600	0.000000	617.255432	]
[	0.000000	2942.825195	682.473633	]
[	0.000000	0.000000	1.000000	]

[23:55:04] Copying _original_average (1280x720) back to _average and preparing...
[23:55:04] cam_scale = 1
[23:55:04] Copying _average 1280x720
[23:55:04] --- done preparing
[23:55:04] ThreadedAnalysis started (1280x720 | 1280x720).

! OPENCV warning: getUMat()/getMat() call chain possible problem.
!                 Base object is dead, while nested/derived object is still alive or processed.
!                 Please check lifetime of UMat/Mat objects!
[WARNING 23:55:04 grabber.cpp:1425] Copying average to GPU.
[23:55:04] Copying _original_average (1280x720) back to _average and preparing...
[23:55:04] cam_scale = 1
[23:55:04] Copying _average 1280x720
[23:55:04] --- done preparing
[23:55:04] Creating queue...
[23:55:04] pv::File<V7, 921.67KB, "/Users/roaldarbol/tracking/trex/experiments/2022-03-09/videos_pv/2022-03-09_13.59.11_vid1", [1280,720], 0 frames, no mask>

crop_offsets: [0,0,0,0]
Time of recording: 'Fri Mar 18 23:55:04 2022'
Length of recording: '00d:01h:13m:46s'
Framerate: -1fps (0ms)

Metadata empty.
[23:55:05] 56/1296676 (t+2s) @ 52.4fps (eta:5:19h load:3ms proc:183ms track:0us save:65us)
[23:55:06] 144/1296676 (t+5s) @ 85fps (eta:5:39h load:3ms proc:177ms track:0us save:116us)
[23:55:07] 240/1296676 (t+8s) @ 91.9fps (eta:4:21h load:3ms proc:179ms track:0us save:98us)
[23:55:08] 334/1296676 (t+11s) @ 93.5fps (eta:4:13h load:3ms proc:181ms track:0us save:57us)

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Haha, at least we're uncovering some things. :P Last OpenCV questions: How do you have it installed? As an environment or a global installation? And as a pip installation? With conda?

No, you don't need it installed. You can install opencv-python in the same environment if you choose to do some closed loop stuff. Otherwise, no. Just don't have it in any weird global PATHs (for the sake of all software on your computer, haha). Shouldn't typically influence TRex too much. OpenCV is included inside the binary for TRex.

Regarding what I just reported - this is fresh off the block. But I tried a few different videos, all 12h long and it consistently said 1h something and Framerate: -1fps. The videos were from last week, and I've been analysing most days for the past 2 months without issues, so it's new, since today. The question is whether this couldn't also be due to my opencv trouble and not due to the new trexversion.

What if you set frame_rate manually? Like tgrabs -i <...> -frame_rate 25 or something? I am more worried that it says there are 0 frames in there. Or is that by design?

EDIT: Oh, I saw the next post. So you just cropped it off there :) Try the frame_rate command line if you like!

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

No, you don't need it installed.

Ah, that's a relief!

What if you set frame_rate manually? Like tgrabs -i <...> -frame_rate 25 or something? I am more worried that it says there are 0 frames in there. Or is that by design?

Not by design, no - sorry about the cropped messages can see how that was confusing. :P
Just tried TGrabs with -frame_rate 30, but nothing changes. Looking through the docs, frame_rate only appears for TRex, and it is picked up when running TRex.

Oh, and btw I'm not on M1 if that makes a difference.

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Actually, it seems that it's setting the frame rate correctly a bit further up, but maybe just prints the wrong value further down?

[00:13:08] ---------------------------------------------------------------
[00:13:08] /LOADED "/Users/roaldarbol/tracking/trex/trex_beetles.settings"
[00:13:08] ---------------------------------------------------------------
[00:13:08] Property<path>('log_file') = "convert_2022-03-14_14.05.05_vid1.log"
[00:13:08] Property<bool>('nowindow') = true
[00:13:08] Property<path>('meta_source_path') = "/Users/roaldarbol/tracking/trex/waiting-room/2022-03-16/2022-03-14_14.05.05_vid1.mp4"
[00:13:08] Property<path>('filename') = "2022-03-14_14.05.05_vid1"
[00:13:08] Given empty filename, the program will default to using input basename "2022-03-14_14.05.05_vid1".
[00:13:08] Property<string>('meta_cmd') = " /usr/local/anaconda3/envs/tracking/bin/TGrabs.app/Contents/MacOS/TGrabs -d /Users/roaldarbol/tracking/trex/experiments/2022-03-14/videos_pv -i /Users/roaldarbol/tracking/trex/waiting-room/2022-03-16/2022-03-14_14.05.05_vid1.mp4 -s /Users/roaldarbol/tracking/trex/trex_beetles.settings -cam_framerate 30 -log_file convert_2022-03-14_14.05.05_vid1.log -nowindow"
[00:13:08] Property<string>('meta_build') = "472a46d0f086beaac87e005605e0a491d513b20f"
[00:13:08] Property<string>('meta_conversion_time') = "19-03-2022 00:13:08"
[00:13:08] Logging to "/Users/roaldarbol/tracking/trex/experiments/2022-03-14/videos_pv/convert_2022-03-14_14.05.05_vid1.log".
[00:13:08] Extension "mp4" basename "/Users/roaldarbol/tracking/trex/waiting-room/2022-03-16/2022-03-14_14.05.05_vid1"
[00:13:08] Searching for "/Users/roaldarbol/tracking/trex/waiting-room/2022-03-16/2022-03-14_14.05.05_vid1"
[00:13:08] Resolution of VideoSource "/Users/roaldarbol/tracking/trex/waiting-room/2022-03-16/2022-03-14_14.05.05_vid1" is [1280,720]
[00:13:08] Setting frame rate to 30 (from video).
[00:13:08] Property<int>('frame_rate') = 30
[00:13:08] Property<size>('video_size') = [1280,720]
[00:13:08] Saving average at or loading from "/Users/roaldarbol/tracking/trex/experiments/2022-03-14/videos_pv/average_2022-03-14_14.05.05_vid1.png".
[00:13:08] Reusing previously generated average.
draw_transform(3x3, CV_32F) = 
[       2852.866943     0.000000        618.613525      ]
[       0.000000        2847.082275     682.512146      ]
[       0.000000        0.000000        1.000000        ]

cam(3x3, CV_32F) = 
[       2945.089600     0.000000        617.255432      ]
[       0.000000        2942.825195     682.473633      ]
[       0.000000        0.000000        1.000000        ]

[00:13:08] Copying _original_average (1280x720) back to _average and preparing...
[00:13:08] cam_scale = 1
[00:13:08] Copying _average 1280x720
[00:13:08] --- done preparing
[00:13:08] ThreadedAnalysis started (1280x720 | 1280x720).

! OPENCV warning: getUMat()/getMat() call chain possible problem.
!                 Base object is dead, while nested/derived object is still alive or processed.
!                 Please check lifetime of UMat/Mat objects!
[WARNING 00:13:08 grabber.cpp:1425] Copying average to GPU.
[00:13:08] Copying _original_average (1280x720) back to _average and preparing...
[00:13:08] cam_scale = 1
[00:13:08] Copying _average 1280x720
[00:13:08] --- done preparing
[00:13:08] Creating queue...
[00:13:08] pv::File<V7, 921.67KB, "/Users/roaldarbol/tracking/trex/experiments/2022-03-14/videos_pv/2022-03-14_14.05.05_vid1", [1280,720], 0 frames, no mask>

crop_offsets: [0,0,0,0]
Time of recording: 'Sat Mar 19 00:13:08 2022'
Length of recording: '00d:01h:13m:24s'
Framerate: -1fps (0ms)

Metadata empty.
[00:13:09] 53/1296677 (t+2s) @ 52.7fps (eta:5:11h load:3ms proc:197ms track:0us save:68us)
[00:13:10] 136/1296677 (t+5s) @ 82fps (eta:5:42h load:3ms proc:201ms track:0us save:76us)
[00:13:11] 217/1296677 (t+7s) @ 79.3fps (eta:5:38h load:3ms proc:211ms track:0us save:68us)

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Lastly, this is a log from a few days ago for comparison - and found in the TRex log that I was running v1.1.6:

[12:01:27] Logging to '/Users/roaldarbol/tracking/trex/experiments/2022-03-02/videos_pv/convert_2022-03-02_14.09.53_vid1.log'.
[12:01:27] Extension 'mp4' basename '/Users/roaldarbol/tracking/trex/waiting-room/2022-03-02/2022-03-02_14.09.53_vid1'
[12:01:27] Searching for '/Users/roaldarbol/tracking/trex/waiting-room/2022-03-02/2022-03-02_14.09.53_vid1'
[12:01:27] Resolution of VideoSource '/Users/roaldarbol/tracking/trex/waiting-room/2022-03-02/2022-03-02_14.09.53_vid1' is [1280x720]
[12:01:27] Setting frame rate to 30 (from video).
[12:01:27] Property<int>('frame_rate') = 30
[12:01:27] Property<size>('video_size') = [1280,720]
[12:01:27] Saving average at or loading from '/Users/roaldarbol/tracking/trex/experiments/2022-03-02/videos_pv/average_2022-03-02_14.09.53_vid1.png'.
[12:01:27] Reusing previously generated average.
[12:01:27] Copying _original_average (1280x720) back to _average and preparing...
[12:01:27] cam_scale = 1.000000
[12:01:27] Copying _average 1280x720
[12:01:27] --- done preparing
[12:01:27] ThreadedAnalysis started (1280x720 | 1280x720).
[WARNING 12:01:27 grabber.cpp:1257] Copying average to GPU.
[12:01:27] Copying _original_average (1280x720) back to _average and preparing...
[12:01:27] cam_scale = 1.000000
[12:01:27] Copying _average 1280x720
[12:01:27] --- done preparing
[12:01:27] Creating queue...
[12:01:27] Done. -1
[12:01:27] pv::File<V7, 921.67KB, '/Users/roaldarbol/tracking/trex/experiments/2022-03-02/videos_pv/2022-03-02_14.09.53_vid1', [1280 x 720], 0 frames, no mask>

crop_offsets: [0,0,0,0]
Time of recording: 'Thu Mar 17 12:01:27 2022'
Length of recording: '00d:00h:00m:00s'
Framerate: -1fps (0ms)

Metadata empty.
[12:01:28] 172/1296676 (t+6s) @ 171.5fps (eta:2:40h load:3ms proc:483us track:0us save:114us)
[12:01:29] 413/1296676 (t+14s) @ 240.7fps (eta:2:34h load:3ms proc:483us track:0us save:68us)
[12:01:30] 638/1296676 (t+21s) @ 223.9fps (eta:2:35h load:3ms proc:637us track:0us save:62us)

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Since it is cropped off - is there a frame_rate in the end? If you finish converting the video, can you let me know what
pvinfo -i /Users/roaldarbol/tracking/trex/experiments/2022-03-02/videos_pv/2022-03-02_14.09.53_vid1
says about the frame rate after its done? Because it might just state a default value in the beginning before conversion actually starts and then only write it when its over.

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Since it is cropped off - is there a frame_rate in the end? If you finish converting the video, can you let me know what pvinfo -i /Users/roaldarbol/tracking/trex/experiments/2022-03-02/videos_pv/2022-03-02_14.09.53_vid1 says about the frame rate after its done? Because it might just state a default value in the beginning before conversion actually starts and then only write it when its over.

I can tell you when it's done tracking sometime tomorrow. If you see the log however, it states [00:13:08] Property<int>('frame_rate') = 30 first and then Framerate: -1fps (0ms) afterwards.

Should I create a separate issue about the performance decrease or are you happy to proceed with it here? It seems to have occured in switching from 1.1.6 to 1.1.8.

from trex.

StefanMPopp avatar StefanMPopp commented on May 28, 2024

I can confirm the performance drop to ~20% of the previous frame rate. The pvinfo of a video I just converted correctly states 25fps (40ms).

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Thank you for your investigation, didn't expect people to be doing things at this hour - but who knows where you are! I am compiling a new version for you and it'll be uploaded tomorrow.

This is interesting, however, because across all of my systems I currently get around a 10% speed INCREASE. Wondering what's going wrong. I will post here once I updated the conda repo!

BTW: This is just tgrabs with the performance decrease, not trex - right?

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

Haha, yeah this was a late night session - I always leave it to track overnight. ;-) Thank YOU for being so swift. @StefanMPopp whew, at least that confirms my computer has not just gone bonkers. Mine is still running TGrabs, will update once TRex has been doing its thing.
I wonder if it's something that has induced a performance increase on GPU, but decreased on CPU? As I'm on the Intel Mac it's all CPU - @StefanMPopp what's your setup? It has also meant that CPU usage has increased quite a lot (was stil at a couple 100 %, but now it's to the extent that the core temperature has remained at ~100 degrees the entire night). Looking forward to compare!
Screenshot 2022-03-19 at 00 46 37

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

UPDATE: TRex runs just fine - and I see an increased performance from ~1100 fps to ~1500 fps 🥳

from trex.

StefanMPopp avatar StefanMPopp commented on May 28, 2024

Arizona here ;)
TGrabs works fine now, with a slight performance increase (though it has always been extremely fast, imo).
Thanks for the quick fix!

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

🥳🥳🥳 I'm seeing the same as @StefanMPopp, works well again and even with a ~10% performance increase! Thanks a ton @mooch443!

from trex.

mooch443 avatar mooch443 commented on May 28, 2024

Haha, yeah this was a late night session - I always leave it to track overnight. ;-) Thank YOU for being so swift. @StefanMPopp whew, at least that confirms my computer has not just gone bonkers. Mine is still running TGrabs, will update once TRex has been doing its thing. I wonder if it's something that has induced a performance increase on GPU, but decreased on CPU?

Wow that's insane. Well, I have just uploaded an update 1.1.8_1 and would like to hear if this improves anything - at least OpenCV is now not compiled in Debug mode anymore. :-) If you are running into trouble/too high CPU, try disabling threading in some parts via new options:

If you set these to false, fewer threads will be doing things in parallel. I have no way to test whether these improve/break things on other systems, so if you could give me some feedback on their effects that'd be super helpful! On all of my systems CPU increased, but also the conversion/tracking speed.

Glad to hear that it works well now though, both of you! Still would like to hear how the above parameters affect it. On my Linux machine it works better if I disable video_reading_use_threads, but everywhere else true is better. Hm.

Actually, @StefanMPopp, you seem to have downloaded before I uploaded 2-3 hours ago, so I am wondering why it changed for you at all :-D These options I mentioned are only available in this new upload, so you probably have to install it again if you wanna test, sorry :S

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

I'll give it a test on Tuesday. 👍🏼

@mooch443 I noticed that the conda on trex.run had reverted to 1.1.7 earlier in the day, so maybe that's what @StefanMPopp had reverted to.

from trex.

roaldarbol avatar roaldarbol commented on May 28, 2024

After a quick test, setting tgrabs_use_threads to false decreases speed by ~50%. CPU usage is higher, if true but nothing like what I was experiencing before, i.e. I can keep a good core temperature.
video_reading_use_threads false didn't seem to make too much of a difference.

from trex.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.