NVIDIA VPI GStreamer Plug-in/Performance/Jetson Nano: Difference between revisions

From RidgeRun Developer Wiki
mNo edit summary
mNo edit summary
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
<noinclude>
<noinclude>
{{NVIDIA VPI GStreamer Plug-in/Head|previous=Performance|next=Performance/Jetson TX1|keywords=}}
{{NVIDIA VPI GStreamer Plug-in/Head|previous=Performance|next=Performance/Jetson TX1|keywords=NVIDIA VPI GStreamer Plug-in Performance Measurements, GstVPI Performance Measurements, Gaussian Filter, RasberryPi HQ Camera, IMX477 Sensor, Jetson Nano developer kit}}
</noinclude>
</noinclude>


Line 10: Line 10:
}}
}}
<br>
<br>
== Performance Measurements :  Source - RasberryPi HQ Camera (IMX477 Sensor) ==  
== NVIDIA VPI GStreamer Plug-in Performance Measurements:  Source - RasberryPi HQ Camera (IMX477 Sensor) ==  
=== <span style="color:#006400;"> <u> Algorithm : Gaussian Filter</u></span> ===
=== <span style="color:#006400;"> Algorithm : Gaussian Filter </span> ===
'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a Gaussian filter given by kernel size of 3 in the X direction and 3 in the Y direction.
For a Gaussian filter given by kernel size of 3 in the X direction and 3 in the Y direction. <br> <br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=3 size-y=3 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=3 size-y=3 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=3 size-y=3 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 16.1786 %
  <tr>
| 19.5862 % @ 99.8966 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.044
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>16.1786 %</td>
    <td>19.5862 % @ 99.8966 MHz</td>
    <td>30.044</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>27.8214 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.041</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 35: Line 52:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a Gaussian filter given by kernel size of 5 in the X direction and 5 in the Y direction.
For a Gaussian filter given by kernel size of 5 in the X direction and 5 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=5 size-y=5 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=5 size-y=5 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=5 size-y=5 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 15.7857 %
  <tr>
| 18.0805 % @ 102.552 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.039
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>15.7857 %</td>
    <td>18.0805 % @ 102.552 MHz</td>
    <td>30.039</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>28.2069 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.045</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 54: Line 90:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a Gaussian filter given by kernel size of 7 in the X direction and 7 in the Y direction.
For a Gaussian filter given by kernel size of 7 in the X direction and 7 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=7 size-y=7 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=7 size-y=7 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=7 size-y=7 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 15.5862 %
  <tr>
| 20 % @ 105.207 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.022
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>15.5862 %</td>
    <td>20 % @ 105.207 MHz</td>
    <td>30.022</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>29.25 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.052</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 73: Line 128:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a Gaussian filter given by kernel size of 11 in the X direction and 11 in the Y direction.
For a Gaussian filter given by kernel size of 11 in the X direction and 11 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=11 size-y=11 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=11 size-y=11 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
<br>
'''Backend : CPU'''
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=11 size-y=11 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
<center>
<table class="wikitable">
  <tr>
    <th style="background:MidnightBlue; color:White">Backend</th>
    <th style="background:MidnightBlue; color:White">CPU %</th>
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>16.3571 %</td>
    <td>22.1241 % @ 117.421 MHz</td>
    <td>30.027</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>29.3103 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.039</td>
  </tr>
</table>
</center>


{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
=== <span style="color:#006400;"> Algorithm : Undistort </span> ===
|-
! style="background:MidnightBlue; color:White" | CPU %
! style="background:MidnightBlue; color:White" | GPU %
! style="background:MidnightBlue; color:White" | FPS
|-
| 16.3571 %
| 22.1241 % @ 117.421 MHz
| 30.027
|}
 
=== <span style="color:#006400;"> <u> Algorithm : Undistort</u></span> ===
'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 '''  
 
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpiundistort k1=0.05 k2=0.01 k3=0 k4=0 model=fisheye ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpiundistort k1=0.05 k2=0.01 k3=0 k4=0 model=fisheye ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpiundistort k1=0.05 k2=0.01 k3=0 k4=0 model=fisheye backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 19.069 %
  <tr>
| 25.6897 % @ 175.408 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.075
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>19.069 %</td>
    <td>25.6897 % @ 175.408 MHz</td>
    <td>30.075</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>83.5926 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>11.077</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 '''  
 
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiundistort k1=0.52 k2=-0.02 p1=0 p2=0 k3=-0.001 k4=0.8 k5=0.05 k6=-0.008 model=polynomial ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiundistort k1=0.52 k2=-0.02 p1=0 p2=0 k3=-0.001 k4=0.8 k5=0.05 k6=-0.008 model=polynomial ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! nvoverlaysink
</pre>
</pre>
<br>
'''Backend : CPU'''
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiundistort k1=0.52 k2=-0.02 p1=0 p2=0 k3=-0.001 k4=0.8 k5=0.05 k6=-0.008 model=polynomial backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! nvoverlaysink
</pre>
<center>
<table class="wikitable">
  <tr>
    <th style="background:MidnightBlue; color:White">Backend</th>
    <th style="background:MidnightBlue; color:White">CPU %</th>
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>19.2143 %</td>
    <td>28.3645 % @ 214.177 MHz</td>
    <td>30.094</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>83.7037 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>11.075</td>
  </tr>
</table>
</center>


{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
=== <span style="color:#006400;"> Algorithm : KLT Tracker </span> ===
|-
! style="background:MidnightBlue; color:White" | CPU %
! style="background:MidnightBlue; color:White" | GPU %
! style="background:MidnightBlue; color:White" | FPS
|-
| 19.2143 %
| 28.3645 % @ 214.177 MHz
| 30.094
|}
 
=== <span style="color:#006400;"> <u> Algorithm : KLT Tracker </u></span> ===
'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1280x720 ''' <br>
'''Resolution: 1280x720 '''  
 
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 filesrc location=/opt/nvidia/vpi/samples/assets/dashcam.mp4 ! qtdemux name=demux demux.video_0 ! queue !  h264parse ! omxh264dec ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiklttracker name=klt boxes="<<613,332,23,23>,<669,329,30,29>,<790,376,41,22>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 filesrc location=/opt/nvidia/vpi/samples/assets/dashcam.mp4 ! qtdemux name=demux demux.video_0 ! queue !  h264parse ! omxh264dec ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiklttracker name=klt boxes="<<613,332,23,23>,<669,329,30,29>,<790,376,41,22>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
<br>
'''Backend : CPU'''
<pre>
gst-launch-1.0 filesrc location=/opt/nvidia/vpi/samples/assets/dashcam.mp4 ! qtdemux name=demux demux.video_0 ! queue !  h264parse ! omxh264dec ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiklttracker name=klt boxes="<<613,332,23,23>,<669,329,30,29>,<790,376,41,22>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv ! ""video/x-raw(memory:NVMM),format=I420"" ! nvoverlaysink
</pre>
<center>
<table class="wikitable">
  <tr>
    <th style="background:MidnightBlue; color:White">Backend</th>
    <th style="background:MidnightBlue; color:White">CPU %</th>
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>21.0952 %</td>
    <td>32.0106 % @ 257.204 MHz</td>
    <td>29.776</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>26.2857 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>29.99</td>
  </tr>
</table>
</center>


{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
=== <span style="color:#006400;"> Algorithm : Harris Detector </span> ===
|-
! style="background:MidnightBlue; color:White" | CPU %
! style="background:MidnightBlue; color:White" | GPU %
! style="background:MidnightBlue; color:White" | FPS
|-
| 21.0952 %
| 32.0106 % @ 257.204 MHz
| 29.776
|}
 
=== <span style="color:#006400;"> <u> Algorithm : Harris Detector </u></span> ===
'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 '''  
 
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=3 block-size=3 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=3 block-size=3 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=3 block-size=3 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 17.3103 %
  <tr>
| 32.4612 % @ 242.922 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 29.246
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>17.3103 %</td>
    <td>32.4612 % @ 242.922 MHz</td>
    <td>29.246</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>76.8621 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>21.458</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
 
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=5 block-size=5 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" !  nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=5 block-size=5 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" !  nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=5 block-size=5 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" !  nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 19.3793 %
  <tr>
| 34.8659 % @ 272.946 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 29.986
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
 
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>19.3793 %</td>
    <td>34.8659 % @ 272.946 MHz</td>
    <td>29.986</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>80.2759 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>17.813</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
 
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=7 block-size=7 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=7 block-size=7 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
<br>
'''Backend : CPU'''
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=7 block-size=7 backend = 1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
<center>
<table class="wikitable">
  <tr>
    <th style="background:MidnightBlue; color:White">Backend</th>
    <th style="background:MidnightBlue; color:White">CPU %</th>
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>17.069 %</td>
    <td>37.3241 % @ 297.497 MHz</td>
    <td>28.99</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>83.2857 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>14.457</td>
  </tr>
</table>
</center>


{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
=== <span style="color:#006400;"> Algorithm : Convolution </span> ===
|-
! style="background:MidnightBlue; color:White" | CPU %
! style="background:MidnightBlue; color:White" | GPU %
! style="background:MidnightBlue; color:White" | FPS
|-
| 17.069 %
| 37.3241 % @ 297.497 MHz
| 28.99
|}
 
=== <span style="color:#006400;"> <u> Algorithm : Convolution</u></span> ===
'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a convolution filter given by kernel size of 3 in the X direction and 3 in the Y direction.
For a convolution filter given by kernel size of 3 in the X direction and 3 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>>" backend = 1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 16.6429 %
  <tr>
| 4.89383 % @ 105.161 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.034
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
 
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>16.6429 %</td>
    <td>4.89383 % @ 105.161 MHz</td>
    <td>30.034</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>31.3333 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.048</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 231: Line 430:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a convolution filter given by kernel size of 5 in the X direction and 5 in the Y direction.
For a convolution filter given by kernel size of 5 in the X direction and 5 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 15.2857 %
  <tr>
| 5.80854 % @ 105.375 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.045
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>15.2857 %</td>
    <td>5.80854 % @ 105.375 MHz</td>
    <td>30.045</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>37.2069 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.039</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 250: Line 468:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a convolution filter given by kernel size of 7 in the X direction and 7 in the Y direction.
For a convolution filter given by kernel size of 7 in the X direction and 7 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 16.2857 %
  <tr>
| 7.08546 % @ 109.487 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.052
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>16.2857 %</td>
    <td>7.08546 % @ 109.487 MHz</td>
    <td>30.052</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>44.1786 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.045</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 269: Line 506:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a convolution filter given by kernel size of 11 in the X direction and 11 in the Y direction.
For a convolution filter given by kernel size of 11 in the X direction and 11 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
<br>
'''Backend : CPU'''
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
<center>
<table class="wikitable">
  <tr>
    <th style="background:MidnightBlue; color:White">Backend</th>
    <th style="background:MidnightBlue; color:White">CPU %</th>
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>15.2414 %</td>
    <td>8.07749 % @ 111.986 MHz</td>
    <td>30.035</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>74.8276 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>24.453</td>
  </tr>
</table>
</center>


{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
=== <span style="color:#006400;"> Algorithm : Separable Convolution </span> ===
|-
! style="background:MidnightBlue; color:White" | CPU %
! style="background:MidnightBlue; color:White" | GPU %
! style="background:MidnightBlue; color:White" | FPS
|-
| 15.2414 %
| 8.07749 % @ 111.986 MHz
| 30.035
|}
 
 
=== <span style="color:#006400;"> <u> Algorithm : Separable Convolution</u></span> ===
'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''RasberryPi HQ Camera (IMX477 Sensor) ''' <br>
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a separable convolution filter given by kernel size of 3 in the X direction and 3 in the Y direction.
For a separable convolution filter given by kernel size of 3 in the X direction and 3 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-1.0,0.0,1.0>" kernel-col="<1.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-1.0,0.0,1.0>" kernel-col="<1.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-1.0,0.0,1.0>" kernel-col="<1.0,2.0,1.0>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 16.0357 %
  <tr>
| 17.3563 % @ 99.8966 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.039
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
 
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>16.0357 %</td>
    <td>17.3563 % @ 99.8966 MHz</td>
    <td>30.039</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>31 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.026</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 310: Line 583:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a separable convolution filter given by kernel size of 5 in the X direction and 5 in the Y direction.
For a separable convolution filter given by kernel size of 5 in the X direction and 5 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-2.0,-1.0,0.0,1.0,2.0>" kernel-col="<1.0,2.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-2.0,-1.0,0.0,1.0,2.0>" kernel-col="<1.0,2.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-2.0,-1.0,0.0,1.0,2.0>" kernel-col="<1.0,2.0,4.0,2.0,1.0>"  backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 16.2143 %
  <tr>
| 17.2931 % @ 99.2328 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.036
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>16.2143 %</td>
    <td>17.2931 % @ 99.2328 MHz</td>
    <td>30.036</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>32 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.041</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 329: Line 621:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a separable convolution filter given by kernel size of 7 in the X direction and 7 in the Y direction.
For a separable convolution filter given by kernel size of 7 in the X direction and 7 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0>" kernel-col="<1.0,2.0,4.0,6.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0>" kernel-col="<1.0,2.0,4.0,6.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0>" kernel-col="<1.0,2.0,4.0,6.0,4.0,2.0,1.0>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 15.4286 %
  <tr>
| 22.4741 % @ 108.858 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.031
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>15.4286 %</td>
    <td>22.4741 % @ 108.858 MHz</td>
    <td>30.031</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>34.7857 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.038</td>
  </tr>
</table>
</center>


'''Platform : Jetson Nano developer kit''' <br>
'''Platform : Jetson Nano developer kit''' <br>
Line 348: Line 659:
'''Resolution: 1920x1080 ''' <br>
'''Resolution: 1920x1080 ''' <br>
For a separable convolution filter given by kernel size of 11 in the X direction and 11 in the Y direction.
For a separable convolution filter given by kernel size of 11 in the X direction and 11 in the Y direction.
<br>
<br>
'''Backend : CUDA (default)'''
<pre>
<pre>
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-16.0,-8.0,-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0,8.0,16.0>" kernel-col="<1.0,2.0,4.0,6.0,12.0,24.0,12.0,6.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-16.0,-8.0,-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0,8.0,16.0>" kernel-col="<1.0,2.0,4.0,6.0,12.0,24.0,12.0,6.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
</pre>
</pre>
 
<br>
{| border="1" align="top" class="sortable wikitable" style="text-align: center;margin: 1em auto 1em auto;"
'''Backend : CPU'''
|-
<pre>
! style="background:MidnightBlue; color:White" | CPU %
gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-16.0,-8.0,-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0,8.0,16.0>" kernel-col="<1.0,2.0,4.0,6.0,12.0,24.0,12.0,6.0,4.0,2.0,1.0>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
! style="background:MidnightBlue; color:White" | GPU %
</pre>
! style="background:MidnightBlue; color:White" | FPS  
<center>
|-
<table class="wikitable">
| 16.5517 %
  <tr>
| 23.1801 % @ 109.927 MHz
    <th style="background:MidnightBlue; color:White">Backend</th>
| 30.041
    <th style="background:MidnightBlue; color:White">CPU %</th>
|}
    <th style="background:MidnightBlue; color:White">GPU %</th>
    <th style="background:MidnightBlue; color:White">FPS</th>
  </tr>
  <tr>
    <td>CUDA</td>
    <td>16.5517 %</td>
    <td>23.1801 % @ 109.927 MHz</td>
    <td>30.041</td>
  </tr>
  <tr>
    <td>CPU</td>
    <td>39.3214 %</td>
    <td>31.2802 % @ 256.856 MHz</td>
    <td>30.043</td>
  </tr>
</table>
</center>


<noinclude>
<noinclude>
{{NVIDIA VPI GStreamer Plug-in/Foot|Performance|Performance/Jetson TX1}}
{{NVIDIA VPI GStreamer Plug-in/Foot|Performance|Performance/Jetson TX1}}
</noinclude>
</noinclude>

Latest revision as of 18:37, 23 February 2023



Previous: Performance Index Next: Performance/Jetson TX1






NVIDIA VPI GStreamer Plug-in Performance Measurements: Source - RasberryPi HQ Camera (IMX477 Sensor)

Algorithm : Gaussian Filter

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a Gaussian filter given by kernel size of 3 in the X direction and 3 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=3 size-y=3 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=3 size-y=3 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 16.1786 % 19.5862 % @ 99.8966 MHz 30.044
CPU 27.8214 % 31.2802 % @ 256.856 MHz 30.041

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a Gaussian filter given by kernel size of 5 in the X direction and 5 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=5 size-y=5 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw' ! vpiupload ! vpigaussianfilter size-x=5 size-y=5 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 15.7857 % 18.0805 % @ 102.552 MHz 30.039
CPU 28.2069 % 31.2802 % @ 256.856 MHz 30.045

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a Gaussian filter given by kernel size of 7 in the X direction and 7 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=7 size-y=7 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=7 size-y=7 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 15.5862 % 20 % @ 105.207 MHz 30.022
CPU 29.25 % 31.2802 % @ 256.856 MHz 30.052

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a Gaussian filter given by kernel size of 11 in the X direction and 11 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=11 size-y=11 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv !  'video/x-raw'  ! vpiupload ! vpigaussianfilter size-x=11 size-y=11 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 16.3571 % 22.1241 % @ 117.421 MHz 30.027
CPU 29.3103 % 31.2802 % @ 256.856 MHz 30.039

Algorithm : Undistort

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpiundistort k1=0.05 k2=0.01 k3=0 k4=0 model=fisheye ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv  !  'video/x-raw'  ! vpiupload ! vpiundistort k1=0.05 k2=0.01 k3=0 k4=0 model=fisheye backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv  flip-method=2 ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 19.069 % 25.6897 % @ 175.408 MHz 30.075
CPU 83.5926 % 31.2802 % @ 256.856 MHz 11.077

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiundistort k1=0.52 k2=-0.02 p1=0 p2=0 k3=-0.001 k4=0.8 k5=0.05 k6=-0.008 model=polynomial ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiundistort k1=0.52 k2=-0.02 p1=0 p2=0 k3=-0.001 k4=0.8 k5=0.05 k6=-0.008 model=polynomial backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 19.2143 % 28.3645 % @ 214.177 MHz 30.094
CPU 83.7037 % 31.2802 % @ 256.856 MHz 11.075

Algorithm : KLT Tracker

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1280x720

Backend : CUDA (default)

gst-launch-1.0 filesrc location=/opt/nvidia/vpi/samples/assets/dashcam.mp4 ! qtdemux name=demux demux.video_0 ! queue !  h264parse ! omxh264dec ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiklttracker name=klt boxes="<<613,332,23,23>,<669,329,30,29>,<790,376,41,22>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 filesrc location=/opt/nvidia/vpi/samples/assets/dashcam.mp4 ! qtdemux name=demux demux.video_0 ! queue !  h264parse ! omxh264dec ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiklttracker name=klt boxes="<<613,332,23,23>,<669,329,30,29>,<790,376,41,22>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv ! ""video/x-raw(memory:NVMM),format=I420"" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 21.0952 % 32.0106 % @ 257.204 MHz 29.776
CPU 26.2857 % 31.2802 % @ 256.856 MHz 29.99

Algorithm : Harris Detector

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=3 block-size=3 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=3 block-size=3 backend=1  ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 17.3103 % 32.4612 % @ 242.922 MHz 29.246
CPU 76.8621 % 31.2802 % @ 256.856 MHz 21.458

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080


Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=5 block-size=5 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" !  nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=5 block-size=5 backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" !  nvoverlaysink
Backend CPU % GPU % FPS
CUDA 19.3793 % 34.8659 % @ 272.946 MHz 29.986
CPU 80.2759 % 31.2802 % @ 256.856 MHz 17.813

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080


Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=7 block-size=7 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiharrisdetector gradient-size=7 block-size=7 backend = 1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2 ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 17.069 % 37.3241 % @ 297.497 MHz 28.99
CPU 83.2857 % 31.2802 % @ 256.856 MHz 14.457

Algorithm : Convolution

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a convolution filter given by kernel size of 3 in the X direction and 3 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>,<0.1111,0.1111,0.1111>>" backend = 1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 16.6429 % 4.89383 % @ 105.161 MHz 30.034
CPU 31.3333 % 31.2802 % @ 256.856 MHz 30.048

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a convolution filter given by kernel size of 5 in the X direction and 5 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>,<0.04,0.04,0.04,0.04,0.04>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 15.2857 % 5.80854 % @ 105.375 MHz 30.045
CPU 37.2069 % 31.2802 % @ 256.856 MHz 30.039

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a convolution filter given by kernel size of 7 in the X direction and 7 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>,<0.0204,0.0204,0.0204,0.0204,0.0204,0.0204,0.0204>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 16.2857 % 7.08546 % @ 109.487 MHz 30.052
CPU 44.1786 % 31.2802 % @ 256.856 MHz 30.045

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a convolution filter given by kernel size of 11 in the X direction and 11 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiconvolution kernel="<<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>,<0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083,0.0083>>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 15.2414 % 8.07749 % @ 111.986 MHz 30.035
CPU 74.8276 % 31.2802 % @ 256.856 MHz 24.453

Algorithm : Separable Convolution

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a separable convolution filter given by kernel size of 3 in the X direction and 3 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-1.0,0.0,1.0>" kernel-col="<1.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-1.0,0.0,1.0>" kernel-col="<1.0,2.0,1.0>"  backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 16.0357 % 17.3563 % @ 99.8966 MHz 30.039
CPU 31 % 31.2802 % @ 256.856 MHz 30.026

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a separable convolution filter given by kernel size of 5 in the X direction and 5 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-2.0,-1.0,0.0,1.0,2.0>" kernel-col="<1.0,2.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-2.0,-1.0,0.0,1.0,2.0>" kernel-col="<1.0,2.0,4.0,2.0,1.0>"  backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 16.2143 % 17.2931 % @ 99.2328 MHz 30.036
CPU 32 % 31.2802 % @ 256.856 MHz 30.041

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a separable convolution filter given by kernel size of 7 in the X direction and 7 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0>" kernel-col="<1.0,2.0,4.0,6.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0>" kernel-col="<1.0,2.0,4.0,6.0,4.0,2.0,1.0>" backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 15.4286 % 22.4741 % @ 108.858 MHz 30.031
CPU 34.7857 % 31.2802 % @ 256.856 MHz 30.038

Platform : Jetson Nano developer kit
RasberryPi HQ Camera (IMX477 Sensor)
Resolution: 1920x1080
For a separable convolution filter given by kernel size of 11 in the X direction and 11 in the Y direction.

Backend : CUDA (default)

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-16.0,-8.0,-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0,8.0,16.0>" kernel-col="<1.0,2.0,4.0,6.0,12.0,24.0,12.0,6.0,4.0,2.0,1.0>" ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink


Backend : CPU

gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! 'video/x-raw' ! vpiupload ! vpiseparableconvolution kernel-row="<-16.0,-8.0,-4.0,-2.0,-1.0,0.0,1.0,2.0,4.0,8.0,16.0>" kernel-col="<1.0,2.0,4.0,6.0,12.0,24.0,12.0,6.0,4.0,2.0,1.0>"  backend=1 ! perf print-arm-load=true ! vpidownload ! nvvidconv flip-method=2  ! "video/x-raw(memory:NVMM),format=I420" ! nvoverlaysink
Backend CPU % GPU % FPS
CUDA 16.5517 % 23.1801 % @ 109.927 MHz 30.041
CPU 39.3214 % 31.2802 % @ 256.856 MHz 30.043


Previous: Performance Index Next: Performance/Jetson TX1