6/28/2021

CUDA_ARCH_BIN Table for gpu type


CUDA_ARCH_BIN Table for gpu type


Tegra

Jetson Products

GPUCompute Capability
Jetson AGX Xavier7.2
Jetson Nano5.3
Jetson TX26.2
Jetson TX15.3
Tegra X15.3
Tesla

Tesla Workstation Products

GPUCompute Capability
Tesla K803.7
Tesla K403.5
Tesla K203.5
Tesla C20752.0
Tesla C2050/C20702.0
Tesla

Tesla NVIDIA Data Center Products

GPUCompute Capability
NVIDIA A1008.0
NVIDIA T47.5
NVIDIA V1007.0
Tesla P1006.0
Tesla P406.1
Tesla P46.1
Tesla M605.2
Tesla M405.2
Tesla K803.7
Tesla K403.5
Tesla K203.5
Tesla K103.0
Quadro

Quadro Desktop Products

GPUCompute Capability
Quadro RTX 80007.5
Quadro RTX 60007.5
Quadro RTX 50007.5
Quadro RTX 40007.5
Quadro GV1007.0
Quadro GP1006.0
Quadro P60006.1
Quadro P50006.1
Quadro P40006.1
Quadro P22006.1
Quadro P20006.1
Quadro P10006.1
Quadro P6206.1
Quadro P6006.1
Quadro P4006.1
Quadro M6000 24GB5.2
Quadro M60005.2
Quadro K60003.5
Quadro M50005.2
Quadro K52003.5
Quadro K50003.0
Quadro M40005.2
Quadro K42003.0
Quadro K40003.0
Quadro M20005.2
Quadro K22003.0
Quadro K20003.0
Quadro K2000D3.0
Quadro K12005.0
Quadro K6205.0
Quadro K6003.0
Quadro K4203.0
Quadro 4103.0
Quadro Plex 70002.0
Quadro

Quadro Mobile Products

GPUCompute Capability
RTX 50007.5
RTX 40007.5
RTX 30007.5
T20007.5
T10007.5
P6206.1
P5206.1
Quadro P52006.1
Quadro P42006.1
Quadro P32006.1
Quadro P50006.1
Quadro P40006.1
Quadro P30006.1
Quadro P20006.1
Quadro P10006.1
Quadro P6006.1
Quadro P5006.1
Quadro M5500M5.2
Quadro M22005.2
Quadro M12005.0
Quadro M6205.2
Quadro M5205.0
Quadro K6000M3.0
Quadro K5200M3.0
Quadro K5100M3.0
Quadro M5000M5.0
Quadro K500M3.0
Quadro K4200M3.0
Quadro K4100M3.0
Quadro M4000M5.0
Quadro K3100M3.0
Quadro M3000M5.0
Quadro K2200M3.0
Quadro K2100M3.0
Quadro M2000M5.0
Quadro K1100M3.0
Quadro M1000M5.0
Quadro K620M5.0
Quadro K610M3.5
Quadro M600M5.0
Quadro K510M3.5
Quadro M500M5.0
NVS

NVS Desktop Products

GPUCompute Capability
NVIDIA NVS 8105.0
NVIDIA NVS 5103.0
NVIDIA NVS 3152.1
NVIDIA NVS 3102.1
NVS

NVS Mobile Products

GPUCompute Capability
NVS 5400M2.1
NVS 5200M2.1
NVS 4200M2.1
GeForce

GeForce and TITAN Products

GPUCompute Capability
GeForce RTX 30908.6
GeForce RTX 30808.6
GeForce RTX 30708.6
NVIDIA TITAN RTX7.5
Geforce RTX 2080 Ti7.5
Geforce RTX 20807.5
Geforce RTX 20707.5
Geforce RTX 20607.5
NVIDIA TITAN V7.0
NVIDIA TITAN Xp6.1
NVIDIA TITAN X6.1
GeForce GTX 1080 Ti6.1
GeForce GTX 10806.1
GeForce GTX 1070 Ti6.1
GeForce GTX 10706.1
GeForce GTX 10606.1
GeForce GTX 10506.1
GeForce GTX TITAN X5.2
GeForce GTX TITAN Z3.5
GeForce GTX TITAN Black3.5
GeForce GTX TITAN3.5
GeForce GTX 980 Ti5.2
GeForce GTX 9805.2
GeForce GTX 9705.2
GeForce GTX 9605.2
GeForce GTX 9505.2
GeForce GTX 780 Ti3.5
GeForce GTX 7803.5
GeForce GTX 7703.0
GeForce GTX 7603.0
GeForce GTX 750 Ti5.0
GeForce GTX 7505.0
GeForce GTX 6903.0
GeForce GTX 6803.0
GeForce GTX 6703.0
GeForce GTX 660 Ti3.0
GeForce GTX 6603.0
GeForce GTX 650 Ti BOOST3.0
GeForce GTX 650 Ti3.0
GeForce GTX 6503.0
GeForce GTX 560 Ti2.1
GeForce GTX 550 Ti2.1
GeForce GTX 4602.1
GeForce GTS 4502.1
GeForce GTS 450*2.1
GeForce GTX 5902.0
GeForce GTX 5802.0
GeForce GTX 5702.0
GeForce GTX 4802.0
GeForce GTX 4702.0
GeForce GTX 4652.0
GeForce GT 7403.0
GeForce GT 7303.5
GeForce GT 730 DDR3,128bit2.1
GeForce GT 7203.5
GeForce GT 705*3.5
GeForce GT 640 (GDDR5)3.5
GeForce GT 640 (GDDR3)2.1
GeForce GT 6302.1
GeForce GT 6202.1
GeForce GT 6102.1
GeForce GT 5202.1
GeForce GT 4402.1
GeForce GT 440*2.1
GeForce GT 4302.1
GeForce GT 430*2.1

/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn.so.8 is not a symbolic link

 Problems

-------
> sudo ldconfig
/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn_adv_train.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn_ops_train.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.2/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8 is not a symbolic link


Solution

delete .so and .so.8 file and make ln file

refer to below command

-------

cd /usr/local/cuda-11.2/targets/x86_64-linux/lib/
ls -lha libcudnn*

##solution
sudo rm libcudnn.so
sudo rm libcudnn.so.8
sudo ln libcudnn.so.8.1.0 libcudnn.so.8
sudo ln libcudnn.so.8 libcudnn.so

sudo rm libcudnn_adv_infer.so
sudo rm libcudnn_adv_infer.so.8
sudo ln libcudnn_adv_infer.so.8.1.0 libcudnn_adv_infer.so.8
sudo ln libcudnn_adv_infer.so.8 libcudnn_adv_infer.so

sudo rm libcudnn_adv_train.so
sudo rm libcudnn_adv_train.so.8
sudo ln libcudnn_adv_train.so.8.1.0 libcudnn_adv_train.so.8
sudo ln libcudnn_adv_train.so.8 libcudnn_adv_train.so

sudo rm libcudnn_cnn_infer.so
sudo rm libcudnn_cnn_infer.so.8
sudo ln libcudnn_cnn_infer.so.8.1.0 libcudnn_cnn_infer.so.8
sudo ln libcudnn_cnn_infer.so.8 libcudnn_cnn_infer.so

sudo rm libcudnn_cnn_train.so
sudo rm libcudnn_cnn_train.so.8
sudo ln libcudnn_cnn_train.so.8.1.0 libcudnn_cnn_train.so.8
sudo ln libcudnn_cnn_train.so.8 libcudnn_cnn_train.so

sudo rm libcudnn_ops_train.so
sudo rm libcudnn_ops_train.so.8
sudo ln libcudnn_ops_train.so.8.1.0 libcudnn_ops_train.so.8
sudo ln libcudnn_ops_train.so.8 libcudnn_ops_train.so

sudo rm libcudnn_ops_infer.so
sudo rm libcudnn_ops_infer.so.8
sudo ln libcudnn_ops_infer.so.8.1.0 libcudnn_ops_infer.so.8
sudo ln libcudnn_ops_infer.so.8 libcudnn_ops_infer.so


Thank you!

🙇🏻‍♂️

6/26/2021

Extracting representative collars in Image

Extract dominant color and palette. 



Free api available here:

https://www.marearts.com/FunAPP-2533910ccafd4558b4cc70f8c4530ee0?p=d939512b217d4108bf340c37d2839c44


matplotlib plt to cv2

This example code is based on plt.pie drawing.

But you can apply any drawing way, just refer to how to be converted plt.fig 2 Numpy(cv2).


..

    import matplotlib.pyplot as plt
fig = plt.figure()
plt.pie(ratio, labels = mylabels, colors = mycolors) #, radius=180)
def get_img_from_fig(fig, dpi=180):
import io
buf = io.BytesIO()
fig.savefig(buf, format="png", dpi=dpi)
buf.seek(0)
img_arr = np.frombuffer(buf.getvalue(), dtype=np.uint8)
buf.close()
img = cv2.imdecode(img_arr, 1)
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

return img

plot_img_np = get_img_from_fig(fig)

cv2.namedWindow('palette')
cv2.imshow('palette', plot_img_np)
cv2.waitKey(0)

..



Thank you.

🙇🏻‍♂️

6/06/2021

Real-time stitching multi-video to one screen

* Introduction

- The solution shows panorama image from multi images. The panorama images is processing by real-time stitching algorithm.

- Each cameras has a limited field of view, but the solution can be monitoring large areas from merged into a panorama image.

- The performance is excellent with the following technical configuration.
 . real time image processing using GPU.
 . Accurate calculation of R, T, K (Rotation, Translation, Camera intrinsic) between each camera with nonlinear optimization
 . Color calibration using the exposure blending

- The solution can be applied efficiently and easy in Military Region, tourist attractions, intersections, ports



* Real-time N to 1 stitching algorithm

- Existing stitching algorithm is modified to separate 2 parts of offline and online processing for more efficient realtime processing.

- The Off-Line processing part is calculated first time or if the matching inaccurate. 

- On-Line processing part is a routine to create the panoramic image by warping (Warping) calculated by the matching, the blending value.



No ordered input images

- Feature extraction and to calculate the homography matrix between each image by evaluating (RANSAC), and set image position through matching rate.
- To get correct R, T using bundle adjustment

- Searching the overlap region, the blending coefficient is determined with respect to the non-overlapping region.

- Obtained R, T, K, and connected by warping the images and blending and complete the panorama finally


* Experiment


- 4 real-time video stitching speed of about 10~20 fps (Intel® core™ i5-3570 cpu 3.40GHz, NVIDIA Geforce GTX 650)



See the result on youtube



updating 42/06/2018
I have decided to sell source code ^^
If you have interest, go to here, you can buy source code


** 2021.06 updated ** 
realtime stitching SDK: 

Dataset for car license plate detection

https://www.marearts.com/Dataset-for-car-license-plate-detection-6f1e623b60c94e54ac6f55bbd5a6a917