Skip to content

Instantly share code, notes, and snippets.

@adujardin
adujardin / crowdhuman_to_yolo.py
Last active July 22, 2024 09:21
Convert CrowdHuman dataset to Yolo (v5) annotations
"""
Based on https://raw.githubusercontent.com/jkjung-avt/yolov4_crowdhuman/master/data/gen_txts.py
Inputs:
* nothing
* or folder with CrowdHuman_train01.zip, CrowdHuman_train02.zip, CrowdHuman_train03.zip, CrowdHuman_val.zip, annotation_train.odgt, annotation_val.odgt
python crowdhuman_to_yolo.py --dataset_path foo/bar/
Outputs:
@adujardin
adujardin / yolov5_val.sh
Last active July 18, 2022 11:55
Yolov5 accuracy test
#docker run --gpus=all -it -v /:/host/ nvcr.io/nvidia/pytorch:22.02-py3
host_folder="/host/tmp/yolov5_results.txt"
rm ${host_folder}
git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -qr requirements.txt
rm requirements.txt
pip uninstall opencv-python
pip install opencv-python-headless==4.4.0.40 ujson
@adujardin
adujardin / decode.py
Created March 31, 2021 14:25
Decoding example of ORStereo dataset GT disparity https://theairlab.org/orstereo/ from PNG 4 uint8 packed, into f32 disparity
import cv2
import numpy as np
disp_u8c4 = cv2.imread("IROS_ORStereo_4K/FoV60/CoalMine/disparity/000002_disp_lu1.png", cv2.IMREAD_UNCHANGED)
disp_gt_f32 = disp_u8c4.view(dtype=np.float32)
@adujardin
adujardin / test_pyzed_availability.sh
Last active March 30, 2021 14:31
Small script to check if the python wrapper of the ZED SDK is available for all config (lot of hardcoded stuff)
ZED_SDK_VERSION="3.5"
URL_base="https://download.stereolabs.com/zedsdk/${ZED_SDK_VERSION}/"
URL_BUCKET="https://stereolabs.sfo2.digitaloceanspaces.com/zedsdk"
#URL_BUCKET="https://stereolabs.sfo2.cdn.digitaloceanspaces.com/zedsdk"
check_HTTP_err_code() {
http_err=$(curl -I -s -o /dev/null -w "%{http_code}" $1)
if [ "$http_err" != "200" ] && [ "$http_err" != "302" ]; then
echo "ERROR: $http_err -> $1"
fi
@adujardin
adujardin / check_cuda_driver.sh
Created November 18, 2020 11:23
Check nvidia driver + cuda runtime version for Linux
#!/usr/bin/env bash
# Check if nvidia-smi is there
if ! command -v nvidia-smi &> /dev/null
then
echo "nvidia-smi could not be found"
exit
else
# Check that it's working
@adujardin
adujardin / download_deb_files.sh
Last active August 12, 2023 08:34
Script to download all dependencies of a package on Ubuntu
#!/usr/bin/env bash
# Inspired from https://ostechnix.com/download-packages-dependencies-locally-ubuntu/
# Can be typically run in docker to select the version you want like:
# docker run -it -v $(pwd):/host ubuntu:20.04 bash -c "$(cat ./this_script.sh)"
package_to_install="docker.io"
apt update; apt install -y apt-rdepends lsb-release
@adujardin
adujardin / mat_conversion.hpp
Last active October 19, 2020 15:54
OpenCV Mat <-> ZED SDK Mat
inline cv::Mat slMat2cvMat(const sl::Mat& input) {
int cv_type = -1;
switch (input.getDataType()) {
case sl::MAT_TYPE::F32_C1: cv_type = CV_32FC1;
break;
case sl::MAT_TYPE::F32_C2: cv_type = CV_32FC2;
break;
case sl::MAT_TYPE::F32_C3: cv_type = CV_32FC3;
break;
case sl::MAT_TYPE::F32_C4: cv_type = CV_32FC4;
# https://spin.atomicobject.com/2017/08/24/start-stop-bash-background-process/
trap "kill 0" EXIT
# For jetsons
if [ "$(arch)" == "aarch64" ]; then
nvpmodel_maxn_mode=0
if [ -e "/proc/device-tree/compatible" ]; then
if [ -e "/proc/device-tree/model" ]; then
sudo apt update -y
sudo apt upgrade -y
sudo apt dist-upgrade -y
sudo apt autoremove -y
sudo apt install wget curl nano -y
wget https://gist.githubusercontent.com/adujardin/59f7653080c2f25e7558d18de66b59bf/raw/ee6850a5c5b81b936454b3ec6373b127e7181624/upgrade_jetson.sh
chmod +x upgrade_jetson.sh
sudo bash upgrade_jetson.sh
@adujardin
adujardin / upgrade_jetson.sh
Last active January 29, 2021 17:34
Script to upgrade OTA the jetpack version (currently to JP45 from JP44)
#!/usr/bin/env bash
LT4_MAJOR=32
LT4_MINOR_OLD=4
LT4_MINOR=5
if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi