当前位置:网站首页>Robomaster visual tutorial (11) summary
Robomaster visual tutorial (11) summary
2022-07-07 23:52:00 【Raring_ Ringtail】
RoboMaster Visual tutorial (11) summary
This series of tutorials is finally the last one , At first, there are two more articles 「 Program startup and process daemon 」 and 「OpenCV GPU The use of modules and clever calculations GPU Of Zero Copy 」.
however 「 Program self start 」 There's nothing to write about , Linux Program self startup is nothing more than /etc/rc.local Add the execution path of our visual program in or bashrc Put the path in to achieve the effect of automatic login .
and 「 Process daemons 」 I wanted to do it before, but it has been shelved , I've only tried to restart the crash with a watchdog on raspberry pie , If you haven't practiced, you won't write .
Another one 「OpenCV GPU The use of modules and clever calculations GPU Of Zero Copy 」 I wanted to sum up this year's preparations and try to use clever tricks GPU Some attempts to optimize the program , But because the last thing we do is negative optimization , It was used GPU The speed is much slower , Plus I'm not familiar with it, so I don't write it .
Zero Copy yes Tegra Series of chips (TK1, TX1, TX2 etc. ) Supported features , Namely GPU And CPU Can share the same memory , Can achieve CPU After processing, directly give this memory to the graphics card for processing , There is no need to copy to video memory , But in the actual test, you can only write it yourself CUDA Kernel function to achieve . although OpenCV There is support for this feature, but almost all are related to GPU The related processing functions are copied to the video memory first and then processed , I've been tossing about this part for a long time ……
Nvidia Yes TK1 The support is limited , A lot of new API None , however Nvidia Yes TX2 The support of more advanced chips is relatively perfect ,L4T Multimedia API ( I won't support it TK1 ) This API Provides some video decoding 、 Camera control related functions , If you are interested, you can study it well , It is of great help to make full use of hardware resources .
During this period, I also tossed OpenCL Want to use Intel CPU The nuclear acceleration on , Finally, because OpenCV Awful eggs UMat Various bug Gave up trying ( How can I toss about so much ……)
Zero Copy Related information :
「Zero-Copy: CUDA, OpenCV and NVidia Jetson TK1: Part 1 」
「Zero-Copy: CUDA, OpenCV and NVidia Jetson TK1: Part 2 」
「CUDA Programming ——zero copy」
The purpose of writing these tutorials is to summarize what we have done and keep a record , In addition, I hope to give new people a chance to enter the pit RM Some introductory suggestions from the students in the Vision Group . In fact, the visual requirements of this competition in Dajiang are not particularly high , Especially after the official and major teams have given the open source code , After reading the open source code carefully, you can basically find out the routine of visual recognition .
But vision is a particularly comprehensive project , It's hard to get started without some tutorials . Most books on vision are about principles or explanations OpenCV How to use library functions , There are few books on Application , I often read many books and know how to use many functions , But really use OpenCV If you do something, you will have no clue .
for instance , Identify the armor plate . If you don't know that the camera can adjust the exposure parameters and directly use the normal exposure , That's too difficult , I don't know how to start , I also saw the official open source code and suddenly realized , So it can be like this .
Vision books rarely mention what parameters the camera has 、 What is the effect of adjusting different parameters . Even OpenCV If you use the default settings when compiling, you may not even be able to adjust the resolution of the camera .
These tutorials basically introduce RM Visual considerations , It provides some specific ideas for implementation , In addition to my own code, I also refer to the open source code of several teams and note the source , I thank them for their selfless dedication .
Because my energy and level are limited , There will inevitably be mistakes in the tutorial , Welcome to correct .
I applied for my own official account Notes on Jiangda , It is convenient for me to help others by summarizing my own learning and research experience . Interested friends can pay attention to .
边栏推荐
- Extract the file name under the folder under win
- Take you hand in hand to build Eureka client with idea
- 数据分析系列 之3σ规则/依据拉依达准则来剔除异常值
- How did a fake offer steal $540million from "axie infinity"?
- Pigsty:开箱即用的数据库发行版
- Uic564-2 Appendix 4 - flame retardant fire test: flame diffusion
- SAP HR social work experience 0023
- May day d-light
- Apng2gif solutions to various problems
- go time包常用函数
猜你喜欢

Navicat connects Oracle

Flash download setup

Take you hand in hand to build Eureka server with idea

The file format and extension of XLS do not match

HB 5469民用飞机机舱内部非金属材料燃烧试验方法

Basic learning of SQL Server -- creating databases and tables with code

一鍵免費翻譯300多頁的pdf文檔

Svn relocation

BSS 7230 航空内饰材料阻燃性能测试

SAP HR labor contract information 0016
随机推荐
【推荐系统基础】正负样本采样和构造
Stringutils tool class
Oracle string sorting
Idea automatically generates serialVersionUID
Chisel tutorial - 02 Chisel environment configuration and implementation and testing of the first chisel module
HB 5469 combustion test method for non-metallic materials in civil aircraft cabin
One of the anti climbing methods
Database interview questions + analysis
平衡二叉树【AVL树】——插入、删除
二叉排序树【BST】——创建、查找、删除、输出
Solutions to problems in sqlserver deleting data in tables
P2141 [noip2014 popularization group] abacus mental arithmetic test
Slam interview summary
Aitm3.0005 smoke toxicity test
Redis caching tool class, worth owning~
Basic learning of SQL Server -- creating databases and tables with code
One click free translation of more than 300 pages of PDF documents
c—线性表
[path planning] use the vertical distance limit method and Bessel to optimize the path of a star
go time包常用函数