Hinweis: Die Konfigurationsumgebung ist das Ubuntu-System.
Weitere Informationen zur Windows-Versionskonfiguration finden Sie im Blog:
1. Adresse zum Herunterladen des Papiers:
LWL : Erfahren Sie, was Sie für die Segmentierung von Videoobjekten lernen sollten.[Papier]
KYS : Kennen Sie Ihre Umgebung: Szeneninformationen für die Objektverfolgung nutzen.[Papier]
PrDiMP : Probabilistische Regression für visuelles Tracking.[Papier]
DiMP :Diskriminative Modellvorhersage für das Tracking lernen.[Papier]
ATOM : Genaue Verfolgung durch Überlappungsmaximierung.[Papier]
2. Code-Download:
https://github.com/visionml/pytracking
3. Erstellen Sie eine neue virtuelle Umgebung und aktivieren Sie sie
conda create -n pytracking python=3.7.0
activate pytracking
4. Installieren Sie Pytorch
pip install torch===1.4.0 -f https://download.pytorch.org/whl/torch_stable.html
pip install torchvision===0.5.0 -f https://download.pytorch.org/whl/torch_stable.html
5. Installieren Sie abhängige Bibliotheken 1
pip install matplotlib pandas tqdm
pip install opencv-python visdom tb-nightly scikit-image tikzplotlib gdown
6. Installieren Sie abhängige Bibliotheken 2
pip install cython
pip install pycocotools
pip install lvis
7. Installieren Sie Precise ROI-Pooling
1) Ninja-Build installieren
sudo apt-get install ninja-build
Wenn es sich nicht um ein Sudoer-Konto handelt, müssen Sie die folgenden Umgebungsvariablen hinzufügen, um Ninja-Build verwenden zu können
export PATH="/usr/bin:/usr/lib:/usr/share:/usr/share/man:$PATH"
2) Laden Sie die Precise ROI-Pooling-Bibliothek herunter und kopieren Sie sie in den Pfad ltr/external/PreciseRoIPooling/
Download-Adresse: https://github.com/vacancy/PreciseRoIPooling
3)PreciseRoIPooling/src/prroi_pooling_gpu_impl.cu ersetzt PreciseRoIPooling/pytorch/prroi_pool/src/prroi_pooling_gpu_impl.cu
用PreciseRoIPooling/src/prroi_pooling_gpu_impl.cuh Ersetzen SiePreciseRoIPooling/pytorch/prroi_pool/src/prroi_pooling_gpu_impl.cuh
cp projectdir/pytracking-master/ltr/external/PreciseRoIPooling/src/prroi_pooling_gpu_impl.cu* projectdir/pytracking-master/ltr/external/PreciseRoIPooling/pytorch/prroi_pool/src/
Erklären Sie, warum Sie dies tun sollten: Die beiden Dateien PreciseRoIPooling/pytorch/prroi_pool/src/prroi_pooling_gpu_impl.cuh und PreciseRoIPooling/pytorch/prroi_pool/src/prroi_pooling_gpu_impl.cu verwenden relative Pfad-Softlinks. Unser Code ist nicht von Git geklont. Für die formale Installation: Der relative Pfad ist ungültig und muss daher kopiert und ersetzt werden. Der Grund, warum Git-Klon nicht verwendet wird, liegt daran, dass der Server häufig nicht auf die Github-Website zugreifen kann.
8. Installieren Sie den Spatial-Correlation-Sampler (für den KYS-Tracker erforderliche Bibliothek).
pip install spatial-correlation-sampler
9. Installieren Sie jpeg4py
sudo apt-get install libturbojpeg
pip install jpeg4py
10. Laden Sie das vorab trainierte Modell herunter
Laden Sie das vorab trainierte Modell herunter
Download-Link:
https://github.com/visionml/pytracking/blob/master/MODEL_ZOO.md
Baidu Cloud-Download-Adresse:
Link: https://pan.baidu.com/s/12R58DNaRJqHodNcT5YzjUQ
Extraktionscode: wbrq
Erstellen Sie einen neuen Netzwerkpfad, um das heruntergeladene vorab trainierte Modell zu speichern
11. Konfigurationsdatei generieren
laufen:
python -c "from pytracking.evaluation.environment import create_default_local_file; create_default_local_file()"
python -c "from ltr.admin.environment import create_default_local_file; create_default_local_file()"
Nach der Ausführung werden zwei Konfigurationsdateien, pytracking/evaluation/local.py und ltr/admin/local.py, generiert, um den Pfad des Vortrainingsmodells und den Pfad des Bewertungsdatensatzes festzulegen.
12. Laufen
Öffnen Sie ein Terminal und führen Sie den Visualisierungsserver aus
activate pytracking
python -m visdom.server
Sehen Sie sich die Ergebnisse über die Adresse http://localhost:8097/ an .
Öffnen Sie ein anderes Terminal und führen Sie den Code aus
activate pytracking
python pytracking/run_tracker.py atom default --dataset_name otb --sequence Soccer --debug 1 --threads 0
Erklären Sie die Parameter: Atom ist der Name des Trackers, der ausgeführt werden muss.
Standard ist die Parametereinstellung. Unter dem Pfad pytracking/parameter/atom sind viele Parameter verfügbar.
otb ist der Name des Datensatzes, der ausgeführt werden muss
Fußball ist der Name der Videosequenz, die abgespielt werden muss.
Debug steuert die Visualisierungsebene
threadsDie Anzahl der laufenden Threads
13. Es ist ein Fehler aufgetreten (1)
raise Exception('Konnte Datei {}'.format(path)) nicht lesen.
Ausnahme: Datei /data3/publicData/Datasets/OTB/OTB2015/BlurCar1/groundtruth_rect.txt konnte nicht gelesen werden
Lösung:
Öffnen Sie pytracking/utils/load_text.py und ändern Sie die Funktion:
def load_text_numpy(path, delimiter, dtype)
Wie folgt:
def load_text_numpy(path, delimiter, dtype):
if isinstance(delimiter, (tuple, list)):
for d in delimiter:
try:
# ground_truth_rect = np.loadtxt(path, delimiter=d, dtype=dtype)
# to deal with different delimeters
import io
with open(path,'r') as f:
ground_truth_rect=np.loadtxt(io.StringIO(f.read().replace(',',' ')))
return ground_truth_rect
except:
pass
raise Exception('Could not read file {}'.format(path))
else:
ground_truth_rect = np.loadtxt(path, delimiter=delimiter, dtype=dtype)
return ground_truth_rect
14. Es ist ein Fehler aufgetreten (2)
subprocess.CalledProcessError: Der Befehl '['ninja', '-v']' hat einen Exit-Status ungleich Null 1 zurückgegeben.
....
RuntimeError: Fehler beim Erstellen der Erweiterung „_prroi_pooling“
Problemursachen:
Der von pip installierte Brenner weist Kompatibilitätsprobleme auf und kann die _prroi_pooling-Bibliothek nicht generieren. Installieren Sie es einfach mit der Conda-Methode im Tutorial.
Lösung:
pip uninstall torch
pip uninstall torchvision
conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
15. Führen Sie Schritt 12 erneut aus
Erfolgreich kompiliert
Führen Sie die 12 Schritte erneut aus
Tracking-Ergebnisse können unter http://localhost:8097/ eingesehen werden.