README.md 2.61 KB
Newer Older
1
2
# Configure environment
## 1. Install Conda packages:
Jiannan Ye's avatar
Jiannan Ye committed
3

Nianchen Deng's avatar
sync    
Nianchen Deng committed
4
5
6
7
8
* Pytorch with CUDA
  ```bash
  $ conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
  ```
  Or ref to https://pytorch.org/get-started/locally/ for install guide
9
10
* matplotlib
* tensorboard
Nianchen Deng's avatar
sync    
Nianchen Deng committed
11
12
* tqdm
* configargparse
Nianchen Deng's avatar
Nianchen Deng committed
13
* (Optional) dash
Nianchen Deng's avatar
sync    
Nianchen Deng committed
14
15
16
  ```bash
  $ conda install dash pandas
  ```
Nianchen Deng's avatar
Nianchen Deng committed
17

18
19
20
## 2. Install Pip packages:
* pyGlm
* tensorboardX
Nianchen Deng's avatar
sync    
Nianchen Deng committed
21
22
23
24
* torch_tb_profiler
* opencv-python
* ipympl
* lpips
Nianchen Deng's avatar
Nianchen Deng committed
25
26
* (optional) thop
* (optional) ConcurrentLogHandler
Jiannan Ye's avatar
Jiannan Ye committed
27

Nianchen Deng's avatar
sync    
Nianchen Deng committed
28
29
30
## 4. Build extension "clib._ext"
```bash
$ python setup.py build_ext
31
```
Nianchen Deng's avatar
sync    
Nianchen Deng committed
32
If build successed, a _ext.\*.so will be generated under build/lib.\*/clib directory. Move this file to clib/.
Jiannan Ye's avatar
Jiannan Ye committed
33

Nianchen Deng's avatar
sync    
Nianchen Deng committed
34
## 4. (Optional) Install FFMpeg with Extra Codecs:
Nianchen Deng's avatar
Nianchen Deng committed
35

Nianchen Deng's avatar
sync    
Nianchen Deng committed
36
```bash
Nianchen Deng's avatar
Nianchen Deng committed
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
sudo apt-get update -qq && sudo apt-get -y install \
  autoconf \
  automake \
  build-essential \
  cmake \
  git-core \
  libass-dev \
  libfreetype6-dev \
  libgnutls28-dev \
  libsdl2-dev \
  libtool \
  libva-dev \
  libvdpau-dev \
  libvorbis-dev \
  libxcb1-dev \
  libxcb-shm0-dev \
  libxcb-xfixes0-dev \
  meson \
  ninja-build \
  pkg-config \
  texinfo \
  wget \
  yasm \
  zlib1g-dev \
  libunistring-dev \
  libvpx-dev \
  libfdk-aac-dev \
  libmp3lame-dev \
  libopus-dev \
  nasm \
  libx264-dev \
  libx265-dev \
  libnuma-dev

mkdir -p ~/ffmpeg_sources ~/bin

cd ~/ffmpeg_sources && \
wget -O ffmpeg-snapshot.tar.bz2 https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && \
tar xjvf ffmpeg-snapshot.tar.bz2

cd ffmpeg && \
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
  --prefix="$HOME/ffmpeg_build" \
  --pkg-config-flags="--static" \
  --extra-cflags="-I$HOME/ffmpeg_build/include" \
  --extra-ldflags="-L$HOME/ffmpeg_build/lib" \
  --extra-libs="-lpthread -lm" \
  --bindir="$HOME/bin" \
  --enable-gpl \
  --enable-gnutls \
  --enable-libass \
  --enable-libfdk-aac \
  --enable-libfreetype \
  --enable-libmp3lame \
  --enable-libopus \
  --enable-libvorbis \
  --enable-libvpx \
  --enable-libx264 \
  --enable-libx265 \
  --enable-nonfree && \
PATH="$HOME/bin:$PATH" make && \
make install && \
hash -r
Nianchen Deng's avatar
sync    
Nianchen Deng committed
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
```

# Useful commands
## 1. Video generate:
```bash
$ ffmpeg -y -r 50 -i %04d.png -c:v libx264 -vframes 600 ../classroom_hmd_mono_hint.mp4
```

## 2. Extract frames:
```bash
$ ffmpeg -i <video_path> -f image2 -q:v 2 -vf fps=<fps> <out_dir>/image%04d.png
```

## 3. Convert onnx to tensorRT
```bash
$ trtexec --onnx=in.onnx --fp16 --saveEngine=out.trt --workspace=4096
```

## 4. Generate dataset of specific path
```bash
$ python tools/data/gen_seq.py -s helix|look_around|scan_around -n <frames> --ref <train_dataset.json> <dataset_dir>
121
```