Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mismatch pymtracking lib and Discuss about App Example 1 and Example 6 #432

Open
tgbaoo opened this issue Nov 9, 2023 · 6 comments
Open

Comments

@tgbaoo
Copy link

tgbaoo commented Nov 9, 2023

Hi, Very interested on your work!, Now I have some issue with the import lib step, the pymtracking lib seems like not appear, could you checking the syntax again?

import sys
import glob
import getopt
import numpy as np
import cv2 as cv
import pymtracking as mt

print("OpenCV Version: {}".format(cv.__version__))


def draw_regions(img, regions, color):
    for reg in regions:
        brect = reg.brect
        cv.rectangle(img, (brect.x, brect.y, brect.width, brect.height), color, 2)
python3 -B demo.py
  File "/mnt/d/Code/hole-in-one-classification/Multitarget-tracker/demo.py", line 6, in <module>
    import pymtracking as mt
ModuleNotFoundError: No module named 'pymtracking'
@Nuzhny007
Copy link
Collaborator

Hi!
Do you make a project with cmake options?
It need:
-DMTRACKER_PYTHON=ON
-DNUMPY_INCLUDE_DIR=

A last value on my computer is /usr/lib/python3/dist-packages/numpy/core/include/

@tgbaoo
Copy link
Author

tgbaoo commented Nov 13, 2023

Hello @Nuzhny007 and big thanks for your response, so I have already run this success, love your passion on computer vision. But I have some concern now, that I have engaged in some (fast moving - small) golf ball tracking on 2 camera frame one for swing at the tee box, one at the putting area, now I have trained the golf ball dataset on yolov5, but I got the error when I run the option 6 train with tensorrt weights and cfg file, then I generate the weight that trained from my golf ball dataset then when I hit the inference, I got the error something like their are a mismatch show in the terminal logger like this:

OpenCL not used
ParseTrackerSettings:  ...
ParseTrackerSettings: 0
Video ../../../golf_ball_and_hole_tracking/duyputt01.mp4 was started from 0 frame with 30 fps, frame size [720 x 1280] and length 309
Config Done!
File does not exist : ../data/yolov5s/yolov5s-kFLOAT-batch1.engine
Loading pre-trained weights...
Loading complete!
WARNING: The implicit batch dimension mode has been deprecated. Please create the network with NetworkDefinitionCreationFlag::kEXPLICIT_BATCH flag whenever possible.
      layer               inp_size            out_size
(1)   Conv              3 x 320 x 640      32 x 160 x 320
(2)   Conv             32 x 160 x 320      64 x  80 x 160
(3)   C3               64 x  80 x 160      64 x  80 x 160
(4)   Conv             64 x  80 x 160     128 x  40 x  80
(5)   C3              128 x  40 x  80     128 x  40 x  80
(6)   Conv            128 x  40 x  80     256 x  20 x  40
(7)   C3              256 x  20 x  40     256 x  20 x  40
(8)   Conv            256 x  20 x  40     512 x  10 x  20
(9)   C3              512 x  10 x  20     512 x  10 x  20
(10)  SPP             512 x  10 x  20     512 x  10 x  20
(11)  Conv            512 x  10 x  20     256 x  10 x  20
(12)  Upsample        256 x  10 x  20     256 x  20 x  40
(13)  Concat          256 x  20 x  40     512 x  20 x  40
(14)  C3              512 x  20 x  40     256 x  20 x  40
(15)  Conv            256 x  20 x  40     128 x  20 x  40
(16)  Upsample        128 x  20 x  40     128 x  40 x  80
(17)  Concat          128 x  40 x  80     256 x  40 x  80
(18)  C3              256 x  40 x  80     128 x  40 x  80
(19)  Conv            128 x  40 x  80     128 x  20 x  40
(20)  Concat          128 x  20 x  40     256 x  20 x  40
(21)  C3              256 x  20 x  40     256 x  20 x  40
(22)  Conv            256 x  20 x  40     256 x  10 x  20
(23)  Concat          256 x  10 x  20     512 x  10 x  20
(24)  C3              512 x  10 x  20     512 x  10 x  20
MultitargetTracker: /mnt/d/Code/hole-in-one-classification/nuzhny/Multitarget-tracker/src/Detector/tensorrt_yolo/trt_utils.cpp:911: nvinfer1::ILayer* layer_conv(std::vector<nvinfer1::Weights>&, std::string, std::map<std::__cxx11::basic_string<char>, std::vector<float> >&, nvinfer1::ITensor*, nvinfer1::INetworkDefinition*, int, int, int, bool, int, bool): Assertion `size == (map_wts_[s_layer_name_ + ".weight"].size())' failed.
[1]    5385 IOT instruction  ./MultitargetTracker ../../../golf_ball_and_hole_tracking/duyputt01.mp4 -e=6

Hope you let the example 6 can predict on custom dataset trained weight!

@tgbaoo
Copy link
Author

tgbaoo commented Nov 13, 2023

I am also tend to use the option 1 because I really like your example on youtube: https://www.youtube.com/watch?v=PalIIAfgX88

But when i download your video and run the default setup of the example 1 option, their are a lot of noise and false positive so, hope you share more about example 1 also, big thanks to you @Nuzhny007

@tgbaoo
Copy link
Author

tgbaoo commented Nov 13, 2023

duyputt01.mp4
duyswing01.mp4
duyputt02.mp4
putt04.mp4
putt01.mp4

I tend to use these video for testing but It is seems like the example 1 code not work well with moving camera right?

@tgbaoo tgbaoo changed the title Mismatch pymtracking lib Mismatch pymtracking lib and Discuss about App Example 1 and Example 6 Nov 13, 2023
@Nuzhny007
Copy link
Collaborator

An example for fast objects used background subtraction algorithm. It works only for static cameras (like security cameras for surveilance systems). For your case it need to train a neural network for ball detection.

@tgbaoo
Copy link
Author

tgbaoo commented Nov 14, 2023

@Nuzhny007 Thanks, but when I use the example 6, it seems like the code do not accept my custom training weight right? Could you double check the example 6 for me?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants