この記事の概要
- 個人的に,研究をやる上で必要と思う最低限のC/C++を用いたROSを含むプログラミングに関する知識を得るための研修的な動画を撮影
- それらをYouTubeにアップしているので,その動画へのリンクをまとめまています
環境
Ubuntu 20.04を使っています.インストールしていない方は,Web記事を参考にインストールを済ませてください.
テキストエディタにはgeditを基本的に使っています(たまにviも).geditはデフォルトでインストールされていて,使い勝手も良いので使っています.ただしgeditに拘る必要はありません(私も実際にプログラミングするときは違うエディタを用いています).適宜,お気に入りのエディタを探してみてください.
動画へのリンク
【第1回】UbuntuでC言語を用いたHello worldの実行(.bashrcでaliasの設定も)
【第2回】C言語でifとforとwhileを使ったプログラミング
【第3回】C言語におけるポインタと構造体を用いたプログラミング
【第4回】C++のプログラムをcmakeでコンパイル
【第5回】C++におけるclass作り方(privateとpublicとコンストラクタ)
【第6回】ヘッダファイルの書き方と複数ソースファイルのコンパイル
【第7回】ファイルへの書き込みと読み込み(fprintfとfscanfの使い方)
【第8回】ファイルに書き込んだデータをgnuplotで描画
【第9回】gnuplotでアニメーションの描画
【第10回】プログラムの引数とシェルスクリプトを用いた効率的な一括処理
【第11回】std::vectorを用いたプログラミング(配列の利用)
ここからROSを使ったプログラミングになります.ROSのインストールはこちらを参考にしました.
【第12回】ROSを用いたプログラミング(std_msgs/Headerのpublish)
【第13回】std_msgs/Headerのsubscriberの実装(classを用いたpub/subの実装例も)
【第14回】ROSで画像処理1(OpenCVで画像を読み込んでpublishする)
【第15回】ROSで画像処理2(画像をsubscribeしてエッジ抽出してpublishする)
【第16回】ROSで画像処理3(エッジ画像からハフ変換で直線抽出する)
PCLを使った点群処理もやろうかと思いましたが時間の都合で断念しました.コチラに解説付きのサンプルプログラムをアップしているので参考にしてください.サンプルプログラムに関する解説記事はコチラに.
【第17回】TFのbroadcastとstatic_transform_publisher
【第18回】TF ListenerでTFツリーから座標を読む
まとめ
UbuntuでC/C++を用いたプログラミングの研修に関する動画へのリンクをまとめています.ROSに関するプログラミングもあります.もう少し充実させます.
21年3月11日作成開始
21年3月25日更新