Giter Site home page Giter Site logo

sagost / video_uav_tracker-3d Goto Github PK

View Code? Open in Web Editor NEW
43.0 3.0 19.0 63.71 MB

Replay a video in sync with a gps track displayed on the map.

Python 93.87% Makefile 3.09% Batchfile 1.06% Shell 0.63% GLSL 0.96% QML 0.40%
video gps gis photogrammetry emergency-response aerial-imagery qgis-plugin video-uav-tracker gps-tracking uav drone-plugin drone video-files 3d-graphics

video_uav_tracker-3d's Introduction

Video Uav Tracker 3D

A Qgis >= 2.99 plugin, synch and display on map a video with a gps track. Fill Geographic Database with information and snapshot. Extract video frame with associated UTM coordinates for rapid photogrammetry use .

Video Uav Tracker v 2.1 (3D)

Replay a video in sync with a gps track displayed on the map.

repository: https://github.com/sagost/Video_UAV_Tracker-3D/


copyright : (C) 2017 by Salvatore Agosta email : [email protected]

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.


INSTRUCTION:

ATTENTION: 3D IS NOT TESTED ON WINDOWS PLATFORM

  • Pixel value query need a .npz archive containing one array data for every frame, it must be named as 'VideoFile.npz' and be in the same folder of 'VideoFile.mp4'
  • for 3d options install numpy,panda3d and pypng python3 modules
  • Download all files from https://github.com/sagost/Video_UAV_Tracker-3D/Video_UAV_Tracker/FFMPEG and copy them in your Video_Uav_Tracker/FFMPEG folder and give them permissions to be executable.
  • Windows user shoukd install K-Lite codec packs or similar

Syncing:

  • Create new project
  • Select video and .gpx track (1 trkpt per second)
  • Create associated shapefile
  • Manage 3d options (select dem and image with same extension and cartographic projection)
  • Identify first couple Frame/GpsTime and select it.
  • Push Synchronize
  • Push Start

Replay:

  • Move on map
  • Create associated DB shapefile
  • Add POI with associated video frame saved
  • Add POI directly from video sceen if 3D is active
  • Create direct georeferenced mosaic if 3D is active
  • Extract frames with associated coordinates for rapid photogrammetry use

GPX FIELDS for 3D OPTION:

  • 'course' or 'yaw' for HEADING
  • 'pitch' for PITCH
  • 'roll' for ROLL

video_uav_tracker-3d's People

Contributors

sagost avatar staspace avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

video_uav_tracker-3d's Issues

Warning Video UAV Tracker 3D

I am trying using Video UAV Tracker 3D but I get the following warning. Any help?

2024-01-08T16:21:06 WARNING warning:C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py:367: ResourceWarning: unclosed file
fps = self.getVideoDetails(str(videofile))

         traceback: File "C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py", line 276, in SelectVideoGPX
          self.LoadVideo(self.videofile)
          File "C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py", line 367, in LoadVideo
          fps = self.getVideoDetails(str(videofile))

2024-01-08T16:21:06 WARNING warning:C:\PROGRA1\QGIS331.1\apps\Python39\lib\subprocess.py:1052: ResourceWarning: subprocess 15252 is still running
_warn("subprocess %s is still running" % self.pid,

         traceback: File "C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py", line 276, in SelectVideoGPX
          self.LoadVideo(self.videofile)
          File "C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py", line 367, in LoadVideo
          fps = self.getVideoDetails(str(videofile))
          File "C:\PROGRA~1\QGIS33~1.1\apps\Python39\lib\subprocess.py", line 1052, in __del__
          _warn("subprocess %s is still running" % self.pid,

2024-01-08T16:21:06 WARNING warning:C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py:394: DeprecationWarning: an integer is required (got type float). Implicit conversion to integers using int is deprecated, and may be removed in a future version of Python.
self.horizontalSlider.setValue(progress)

         traceback: File "C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py", line 276, in SelectVideoGPX
          self.LoadVideo(self.videofile)
          File "C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py", line 372, in LoadVideo
          self.player.setMedia(mc)
          File "C:\Users/spedretti/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\NewProject.py", line 394, in positionChanged
          self.horizontalSlider.setValue(progress)

Couldn't load plugin Video_UAV_Tracker due to an error when calling its classFactory method

Dear Salvatore,

I'm getting this python error in Video UAV Tracker since a few days ago.

Couldn't load plugin 'Video_UAV_Tracker' due to an error when calling its classFactory() method 

TypeError: qRegisterResourceData(int, bytes, bytes, bytes): argument 2 has unexpected type 'str' 
Traceback (most recent call last):
  File "C:/OSGEO4~1/apps/qgis-rel-dev/./python\qgis\utils.py", line 334, in _startPlugin
    plugins[packageName] = package.classFactory(iface)
  File "C:/Users/PedroVenancio/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\__init__.py", line 46, in classFactory
    from .VideoGis import VideoGis
  File "C:/OSGEO4~1/apps/qgis-rel-dev/./python\qgis\utils.py", line 737, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "C:/Users/PedroVenancio/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\Video_UAV_Tracker\VideoGis.py", line 52, in 
    import resources
  File "C:/OSGEO4~1/apps/qgis-rel-dev/./python\qgis\utils.py", line 737, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "C:/Users/PedroVenancio/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\qgis2web\resources.py", line 1251, in 
    qInitResources()
  File "C:/Users/PedroVenancio/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\qgis2web\resources.py", line 1243, in qInitResources
    qt_resource_name, qt_resource_data)
TypeError: qRegisterResourceData(int, bytes, bytes, bytes): argument 2 has unexpected type 'str'

This happen both in QGIS 3.4.12, 3.8.3 and master. Tested only in Windows.

Error in progress bar with python 3.10

I get this error :

TypeError: setValue(self, a0: int): argument 1 has unexpected type 'float' 
Traceback (most recent call last):
  File "/home/sylvain/.local/share/QGIS/QGIS3/profiles/sylvain/python/plugins/Video_UAV_Tracker/NewProject.py", line 448, in positionChanged
    self.horizontalSlider.setValue(progress)
TypeError: setValue(self, a0: int): argument 1 has unexpected type 'float'

Originally posted by @kikislater in #4 (comment)

Provide README information about required mp4 codec.

I installed and tried the Video_UAV_Tracker-3D recently on my machine. However, it turned out that a mp4 codec is required for the qt5 window. If such a codec is not installed, the video window stays black.

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.