Dockerをちゃんと使おうと考えていたらKubernetesに出会いました。ERPのシステム開発でkubernetesを使おうとして苦労した、あるいは現在進行形で苦労していることを、そもそもKubernetesが解決しようとしている課題やそのアーキテクチャそのものにも言及しながらお話します。Dockerをベースにシステム設計を行おうとしている方にノウハウ(主に苦労話)を共有します。
July 24th, 2016 July Tech Festa 2016
セル生産方式におけるロボットの活用には様々な問題があるが,その一つとして 3 体以上の物体の組み立てが挙げられる.一般に,複数物体を同時に組み立てる際は,対象の部品をそれぞれロボットアームまたは治具でそれぞれ独立に保持することで組み立てを遂行すると考えられる.ただし,この方法ではロボットアームや治具を部品数と同じ数だけ必要とし,部品数が多いほどコスト面や設置スペースの関係で無駄が多くなる.この課題に対して音𣷓らは組み立て対象物に働く接触力等の解析により,治具等で固定されていない対象物が組み立て作業中に運動しにくい状態となる条件を求めた.すなわち,環境中の非把持対象物のロバスト性を考慮して,組み立て作業条件を検討している.本研究ではこの方策に基づいて,複数物体の組み立て作業を単腕マニピュレータで実行することを目的とする.このとき,対象物のロバスト性を考慮することで,仮組状態の複数物体を同時に扱う手法を提案する.作業対象としてパイプジョイントの組み立てを挙げ,簡易な道具を用いることで単腕マニピュレータで複数物体を同時に把持できることを示す.さらに,作業成功率の向上のために RGB-D カメラを用いた物体の位置検出に基づくロボット制御及び動作計画を実装する.
This paper discusses assembly operations using a single manipulator and a parallel gripper to simultaneously
grasp multiple objects and hold the group of temporarily assembled objects. Multiple robots and jigs generally operate
assembly tasks by constraining the target objects mechanically or geometrically to prevent them from moving. It is
necessary to analyze the physical interaction between the objects for such constraints to achieve the tasks with a single
gripper. In this paper, we focus on assembling pipe joints as an example and discuss constraining the motion of the
objects. Our demonstration shows that a simple tool can facilitate holding multiple objects with a single gripper.
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matchingharmonylab
公開URL:https://arxiv.org/pdf/2404.19174
出典:Guilherme Potje, Felipe Cadar, Andre Araujo, Renato Martins, Erickson R. ascimento: XFeat: Accelerated Features for Lightweight Image Matching, Proceedings of the 2024 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2023)
概要:リソース効率に優れた特徴点マッチングのための軽量なアーキテクチャ「XFeat(Accelerated Features)」を提案します。手法は、局所的な特徴点の検出、抽出、マッチングのための畳み込みニューラルネットワークの基本的な設計を再検討します。特に、リソースが限られたデバイス向けに迅速かつ堅牢なアルゴリズムが必要とされるため、解像度を可能な限り高く保ちながら、ネットワークのチャネル数を制限します。さらに、スパース下でのマッチングを選択できる設計となっており、ナビゲーションやARなどのアプリケーションに適しています。XFeatは、高速かつ同等以上の精度を実現し、一般的なラップトップのCPU上でリアルタイムで動作します。
14. 2.2. 仮想サーバへ接続
1. IP アドレスを確認します。インターフェースを右クリックし【 IP アドレスをコピー 】を選びます。
2. Tera Term やターミナルなどを開き、3台のサーバに SSH でログインします。
• ログイン時のIDは「root」、パスワードは作成時に入力したもの
• ターミナルでは「ssh -l root <IPアドレス>」か「ssh root@<IPアドレス>」
14
$ ssh -l root 153.125.225.67
The authenticity of host ‘153.125.225.67 (153.125.225.67)' can't be established.
ECDSA key fingerprint is SHA256:MHsAGGJvASP/yj3JuhwuEH1BfbuJ8FebYyu7eWrjerI.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘153.125.225.67' (ECDSA) to the list of known hosts.
root@153.125.225.67's password:
[root@rancher-01 ~]#
実行例
ssh コマンドで仮想サーバに接続
接続を許可するので yes
パスワードを入力(画面に表示されません)
21. 4.1. hello-world コンテナの実行とイメージ確認
1. 【 docker run 】コマンドでコンテナを実行します。
21
# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
c04b14da8d14: Pull complete
Digest: sha256:0256e8a36e2070f7bf2d0b0763dbabdd67798512411de4cdcf9431a1feb60fd9
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker Hub account:
https://hub.docker.com
For more examples and ideas, visit:
https://docs.docker.com/engine/userguide/.
hello-world:latest イメージ を実行
ローカルにイメージがないため、Docker Hubからダウンロード
ダウンロード(pull)完了
hello-world の出力
ド ッ カ ー ラ ン
ド ッ カ ー ラ ン ハ ロ ー ワ ー ル ド
ハ ロ ー ワ ー ル ド
プ ル
22. 2. 【 docker ps 】コマンドで、コンテナの状態を確認します。
• CONTAINER ID … コンテナごとのユニークな ID
• IMAGE … コンテナの元になったイメージ名
• CREATED … コンテナの作成時間
• STATUS … 現在の状態(ステータス)。「Exited (0)」は正常終了
• PORTS … ポートをホスト側に割り当て(マッピング時)は情報を表示
• NAMES … コンテナ名。実行時に指定しなければ、「形容詞_人名」を自動組み合わせ
3. 【 docker images 】で、ローカル上のイメージを一覧表示します。
• REPOSITORY … リポジトリ名
• TAG … タグ名
• IMAGE ID … イメージ ID
• CREATED … 作成時
• SIZE … イメージの使用容量
22
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6d47af69a31b hello-world "/hello" 9 minutes ago Exited (0) 9 minutes ago awesome_varahamihira
オプション「-a」は全て(all)のコンテナを表示
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest c54a2cc56cbb 3 months ago 1.848 kB
ピーエス
イ メ ー ジ ズ
23. 4.2. Ubuntu コンテナの実行
hello-world イメージを使ったコンテナ実行は、画面にメッセージを表示するシンプルなもの
でした。次は、サーバのように操作可能な Linux ディストリビューションのコンテナを実行します。
1. 【 docker pull 】コマンドで ubuntu 公式イメージを取得します。
2. ダウンロードしたイメージを【 docker images 】で確認します。
23
# docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
6bbedd9b76a4: Pull complete
fc19d60a83f1: Pull complete
de413bb911fd: Pull complete
2879a7ad3144: Pull complete
668604fde02e: Pull complete
Digest: sha256:2d44ae143feeb36f4c898d32ed2ab2dffeb3a573d2d8928646dfc9cb7deb1315
Status: Downloaded newer image for ubuntu:lates
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest f753707788c5 2 weeks ago 127.1 MB
hello-world latest c54a2cc56cbb 3 months ago 1.848 kB
プ ル
56. 5. 約1分ほど待つとか、【 Close 】をクリックします。画面が「Setting up Kubernetes...」約1分ほど
待つとか、【 Close 】をクリックします。画面が `Setting up Kubernetes...` と変わり、セット
アップが進行します。 と変わり、セットアップが進行します。
6. 画面に「kubernetes」サービスが自動的に表示されます。
56