# (参考訳) ROSを用いた機械学習合成データの自動生成 [全文訳有]

Automatic Generation of Machine Learning Synthetic Data Using ROS ( http://arxiv.org/abs/2106.04547v1 )

ライセンス: CC0 1.0
Kyle M. Hart (1), Ari B. Goodman (1), Ryan P. O'Shea (1) ((1) Naval Air Warfare Center - Aircraft Division - Lakehurst)(参考訳) データラベリングは時間を要するプロセスです。 そのため、多くのデータサイエンティストはデータ生成とラベル付けのプロセスを支援する様々なツールを使っている。 これらのツールはラベルの自動化に役立つが、その多くはプロセス全体を通してユーザーインタラクションを必要とする。 さらに、ほとんどのターゲットはネットワークフレームワークのみである。 複数のフレームワークを探索する研究者は、追加のツールや変換スクリプトを見つける必要がある。 本稿では任意のネットワークフォーマットで合成データを生成する自動化ツールを提案する。 ロボット・オペレーティング・システム(ROS)とガゼボ(Gazebo)はロボットコミュニティで一般的なツールである。 rosパラダイムを通じて、シミュレーション環境とデータ生成プロセスの広範なユーザカスタマイズが可能になる。 さらに、プラグインのようなフレームワークは、コード本体を変更することなく、任意のデータフォーマットライタの開発を可能にする。 このツールを使用して、著者らは、データセットのサイズに応じて、約15分間のユーザ設定時間とさまざまなハンドオフ実行時間を使用して、3つのユニークなトレーニングフォーマット用の任意のサイズのイメージデータセットを生成することができた。 このデータ生成ツールのソースコードはhttps://github.com/n avy-rise-lab/nn_data _collectionで入手できる。

Data labeling is a time intensive process. As such, many data scientists use various tools to aid in the data generation and labeling process. While these tools help automate labeling, many still require user interaction throughout the process. Additionally, most target only a few network frameworks. Any researchers exploring multiple frameworks must find additional tools orwrite conversion scripts. This paper presents an automated tool for generating synthetic data in arbitrary network formats. It uses Robot Operating System (ROS) and Gazebo, which are common tools in the robotics community. Through ROS paradigms, it allows extensive user customization of the simulation environment and data generation process. Additionally, a plugin-like framework allows the development of arbitrary data format writers without the need to change the main body of code. Using this tool, the authors were able to generate an arbitrarily large image dataset for three unique training formats using approximately 15 min of user setup time and a variable amount of hands-off run time, depending on the dataset size. The source code for this data generation tool is available at https://github.com/N avy-RISE-Lab/nn_data _collection
公開日: Tue, 8 Jun 2021 17:30:10 GMT

※ 翻訳結果を表に示しています。PDFがオリジナルの論文です。翻訳結果のライセンスはCC BY-SA 4.0です。詳細はトップページをご参照ください。


    Page: /      
Automatic Generation of Machine Learning Synthetic 機械学習合成の自動生成 0.76
Data using ROS* ROS を用いたデータ* 0.80
Kyle M. Hart1[0000-0001-8254-5722], Ari B. Goodman1, and Ryan P. O’Shea1 Kyle M. Hart1[0000-0001-8254-5722], Ari B. Goodman1, Ryan P. O’Shea1 0.74
1 Naval Air Warfare Center – Aircraft Division – Lakehurst, Lakehurst, NJ 08757 USA 1海軍航空戦センター - 航空機師団 - レイクハースト、レイクハースト、NJ 08757USA 0.68
kyle.m.hart@navy.mil , ari.b.goodman@navy.m il, kyle.m.hart@navy.mil , ari.b.goodman@navy.m il, 0.50
ryan.oshea3@navy.mil ryan.oshea3@navy.mil 0.52
Abstract. Data labeling is a time intensive process. 抽象。 データラベリングは時間を要するプロセスです。 0.68
As such, many data scientists use various tools to aid in the data generation and labeling process. そのため、多くのデータサイエンティストはデータ生成とラベル付けのプロセスを支援する様々なツールを使っている。 0.70
While these tools help automate labeling, many still require user interaction throughout the process. これらのツールはラベルの自動化に役立つが、その多くはプロセス全体を通してユーザーインタラクションを必要とする。 0.55
Additionally, most target only a few network frameworks. さらに、ほとんどのターゲットはネットワークフレームワークのみである。 0.81
Any researchers exploring multiple frameworks must find additional tools or write conversion scripts. 複数のフレームワークを探索する研究者は、追加のツールや変換スクリプトを書かなければならない。 0.58
This paper presents an automated tool for generating synthetic data in arbitrary network formats. 本稿では任意のネットワークフォーマットで合成データを生成する自動化ツールを提案する。 0.78
It uses Robot Operating System (ROS) and Gazebo, which are common tools in the robotics community. ロボット・オペレーティング・システム(ROS)とガゼボ(Gazebo)はロボットコミュニティで一般的なツールである。 0.81
Through ROS paradigms, it allows extensive user customization of the simulation environment and data generation process. rosパラダイムを通じて、シミュレーション環境とデータ生成プロセスの広範なユーザカスタマイズが可能になる。 0.80
Additionally, a plugin-like framework allows the development of arbitrary data format writers without the need to change the main body of code. さらに、プラグインのようなフレームワークは、コード本体を変更することなく、任意のデータフォーマットライタの開発を可能にする。 0.68
Using this tool, the authors were able to generate an arbitrarily large image dataset for three unique training formats using approximately 15 minutes of user setup time and a variable amount of hands-off run time, depending on the dataset size. このツールを使用して、著者らは、データセットのサイズに応じて、約15分間のユーザ設定時間とさまざまなハンドオフ実行時間を使用して、3つのユニークなトレーニングフォーマット用の任意のサイズのイメージデータセットを生成することができた。 0.69
The source code for this data generation tool is available at https://github.com/N avy-RISE-Lab/nn_data _collection このデータ生成ツールのソースコードはhttps://github.com/n avy-rise-lab/nn_data _collectionで入手できる。 0.47
Keywords: Machine Learning, Data Generation, ROS キーワード: 機械学習、データ生成、ROS 0.89
1 Introduction Data labeling is such a time intensive and tedious task that many data scientists turn to existing datasets or outsource their data labeling process to others. 1 はじめに データラベリングは非常に時間を要する作業であり、多くのデータサイエンティストが既存のデータセットに切り替えたり、データラベリングプロセスを他の人にアウトソースしたりする。 0.67
However, there are occasions where scientists may require brand new datasets due to mission needs. しかし、ミッションのニーズにより、科学者が新しいデータセットを必要とすることがある。 0.67
Creating these custom datasets is a time-consuming process due to the time involved with data acquisition and data labeling. これらのカスタムデータセットの作成は、データ取得とデータラベリングに関わるため、時間を要するプロセスである。 0.79
The time further increases if the researchers explore different networks or new scenarios after collecting the dataset. 研究者がデータセットを収集した後、異なるネットワークや新しいシナリオを探索すれば、時間はさらに増加する。 0.63
For example, if researchers wish to investigate scenes with different objects, they must create and label more data containing these new objects. 例えば、異なるオブジェクトのシーンを調査したい場合は、これらの新しいオブジェクトを含むより多くのデータを作成し、ラベル付けする必要がある。 0.72
Furthermore, researchers must make * DISTRIBUTION STATEMENT A. さらに研究者は ※流通状況A 0.50
Approved for public release: distribution unlimited. 公開リリースが承認された: 配布は無制限。 0.55
NAWCAD-LKE Release Number 2021-72. NAWCAD-LKE リリース番号2021-72。 0.57
Published in HCI International 2021 by Springer. HCI International 2021で、Springerより出版。 0.76
The final authenticated version is available 最終認証版が利用可能 0.72
online at https://doi.org/10.1 007/978-3-030-77772- 2_21 online at https://doi.org/10.1 007/978-3-030-77772- 2_21 0.27
sure to account for any potential statistical changes in their dataset when they add or remove data. データセットにデータの追加や削除の際の統計的変更の可能性を考慮してください。 0.73
Often due to limited time and financial resources, researchers must be careful to select parameters to succinctly create their dataset. 時間と資金が限られているため、研究者はデータセットを簡潔に作成するためにパラメータを選択することに注意する必要がある。 0.57
As the number of different parameters increase, so too does the dataset size and therefore the cost as well. パラメータの数が増えるにつれて、データセットのサイズも大きくなり、そのためコストも大きくなる。 0.76
Because of this, a variety of tools are available to aid with the data labeling process. そのため、データラベリングプロセスを支援するために、さまざまなツールが利用可能である。 0.74
These tools assist in the labeling process with varying levels of automation. これらのツールは、さまざまなレベルの自動化でラベル付けプロセスを支援する。 0.65
This work introduces a new fully automated tool targeted towards the creation of data sets using Robot Operating System (ROS) [1] and Gazebo [2], which are common tools within the robotics community. 本研究は,ロボットオペレーティングシステム(ROS)[1]とGazebo [2]を用いたデータセット作成を目的とした,ロボットコミュニティにおける一般的なツールである完全自動化ツールを紹介する。 0.89
Using ROS and Gazebo, this tool generates perfectly labeled data from arbitrary user-specified scenes. ROSとGazeboを使用して、任意のユーザ指定シーンから完全にラベル付けされたデータを生成する。 0.57
By using common robotic toolsets, this tool provides a familiar means by which robotics researchers can build labeled image datasets for their work. このツールは、一般的なロボットツールセットを使用することで、ロボット研究者が作業のためにラベル付き画像データセットを構築できる、馴染みのある手段を提供する。
訳抜け防止モード: 一般的なロボットツールセットを使うことで、このツールは使い慣れた手段を提供する ロボティクスの研究者は ラベル付き画像データセットを構築できる
This tool is designed for minimal user involvement during the data generation process and maximum flexibility. このツールは、データ生成プロセスと最大柔軟性の間のユーザの関与を最小限にするように設計されている。 0.59
The user can specify arbitrary motion plans for various objects in the scene, the camera position, simulated frame rate, and more. ユーザーはシーン内の様々な物体、カメラの位置、シミュレーションされたフレームレートなどの任意の動き計画を指定することができる。 0.82
Additionally, the tool allows the addition of arbitrary new data formats through a plugin-like structure. さらにこのツールは、プラグインのような構造を通じて任意の新しいデータフォーマットを追加できる。 0.75
This provides extensibility to new use cases not originally considered. これは、当初考慮されなかった新しいユースケースの拡張性を提供する。 0.50
Once configured, the tool automatically runs without requiring user involvement, dramatically reducing hands-on time. 一度設定すると、ツールはユーザーの関与なしに自動的に動作し、ハンズオン時間を劇的に削減する。 0.53
The paper structure is as follows. 紙構造は以下のとおりである。 0.84
First is an overview of other data labeling tools. まず、他のデータラベリングツールの概要を示す。 0.74
Then, the authors describe their first version of this tool, which focused on a specific use case. 次に著者らは、特定のユースケースに焦点を当てた最初のバージョンのツールについて説明する。 0.66
Next, the paper describes the improved version of the tool. 次に,ツールの改良版について述べる。 0.67
A discussion on usability follows, including steps required by the user, information on creating new data format writers, and a small vignette to illustrate the tool’s effectiveness. ユーザビリティに関する議論には,ユーザに必要なステップ,新たなデータフォーマット作成に関する情報,ツールの有効性を説明するための小さなウィグレットなどが含まれている。 0.78
Lastly, the authors identify several follow-on steps to further improve the tool. 最後に、著者はツールをさらに改善するためのいくつかのフォローオンステップを特定します。 0.47
Additionally, the source code for the tool described here is available at さらに、ここで説明したツールのソースコードも利用可能である。 0.78
https://github.com/N avy-RISE-Lab/nn_data _collection https://github.com/N avy-RISE-Lab/nn_data _collection 0.24
2 Related Work There is a wide array of techniques used to obtain labeled data for neural network training. 2 関連作品 ニューラルネットワークトレーニングのラベル付きデータを得るために、幅広いテクニックが使用されている。 0.74
These include the use of existing labeled datasets, leveraging data augmentation techniques on unlabeled data, and manually creating and labeling new datasets. これには、既存のラベル付きデータセットの使用、ラベル付きデータに対するデータ拡張テクニックの活用、手作業で新しいデータセットの作成とラベル付けが含まれる。 0.60
Roh et. al. [3] provide a comprehensive overview of the various techniques. ローなど。 アル [3] は様々なテクニックの包括的な概要を提供する。 0.46
Many current techniques use existing datasets for training. 現在の多くの技術では、トレーニングに既存のデータセットを使用している。 0.41
However, there are cases where a project requires the creation of a new dataset through manual image labeling. しかし、手動のイメージラベリングによって新しいデータセットを作成する必要がある場合もあります。 0.67
The traditional way to create labeled datasets involves manually labeling each image. ラベル付きデータセットを作成する従来の方法は、各イメージを手動でラベル付けするものだ。 0.56
There are several tools, such as Yolo_mark [4] and LabelImg [5], that assist a user with labeling. Yolo_mark [4] や LabelImg [5] など,ユーザのラベル付けを支援するツールはいくつかあります。 0.84
These tools typically provide user interfaces to aid in quickly drawing bounding boxes and assigning labels to an image. これらのツールは通常、境界ボックスを素早く描画し、画像にラベルを割り当てるためにユーザーインターフェイスを提供する。
訳抜け防止モード: これらのツールは典型的にはユーザーインターフェイスを提供する 境界ボックスを素早く描き ラベルを画像に割り当てます
The tools then write the labels to file in a specified format. 次に、ツールがラベルを特定のフォーマットでファイルに書き込む。 0.73
While these tools speed up the data labeling process, they still require the user to draw the boxes and assign the labels or require user confirmation that an automated guess is correct. これらのツールは、データラベリングプロセスを高速化するが、ユーザはボックスを描き、ラベルを割り当てるか、自動推測が正しいことをユーザーに確認する必要がある。 0.83
Depending on the size of the dataset, labeling can be a laborious process. データセットのサイズによっては、ラベル付けは面倒なプロセスになる可能性がある。 0.60
For example, the authors used Yolo_mark to label 例えば、著者はラベルにYolo_markを使った 0.68
a video approximately a minute and a half in length in about three hours. 約3時間で約1分半の長さのビデオです 0.64
The process can also introduce human error into the dataset if an image is accidentally mislabeled. このプロセスは、画像が誤ってラベル付けされた場合、データセットにヒューマンエラーを導入することもできる。 0.58
Ideally, multiple people will label each image; however, having multiple people label each image significantly increases the amount of time and money involved in creating the dataset. 理想的には、複数の人が各イメージにラベルを付けるが、複数のイメージにラベルを付けることで、データセットの作成にかかる時間と費用が大幅に増加する。 0.69
Additionally, these tools typically target only one or a few networks. さらに、これらのツールは通常、1つか数つのネットワークだけを対象としている。 0.50
Extending datasets to additional networks in the worst case can be impossible without relabeling missing data, and in the best case requires deep knowledge of the tool’s code or a post-processing conversion script. 最悪の場合、データセットを追加ネットワークに拡張することは、データの欠落を許容することなく不可能になり得る。そして、最良のケースでは、ツールのコードや後処理変換スクリプトの深い知識が必要になる。 0.59
There is also a growing body of research on using neural networks to create and label data for training and testing other neural networks. ニューラルネットワークを使って、他のニューラルネットワークのトレーニングとテストのためのデータの作成とラベル付けを行う研究も増えている。 0.78
Sixt, et al [6] and Pfeiffer et al. Sixt, et al [6] and Pfeiffer et al. 0.85
[7] both use generative adversarial networks (GANs) to take ideal 3D models of objects of interest and place them into realistic synthetic images. 7] どちらも生成的敵ネットワーク(gans)を使用して,興味のあるオブジェクトの理想的な3dモデルを取得し,それらを現実的な合成画像に配置する。 0.68
They use example images to mimic the lighting conditions, blur, and other characteristics. 彼らは、照明条件やぼやけなどの特徴を模倣するためにサンプル画像を使用する。 0.60
Similarly, Lee at al. 同様に、Lee at al。 0.83
[8] use a neural network to perform style transfer. [8] ニューラルネットワークを使用して、スタイル転送を行います。 0.71
These approaches allow for automatically generating large datasets. これらのアプローチにより、大規模なデータセットを自動的に生成できる。 0.51
However, the examples the authors found were limited to single objects found within an image and focused on image labels instead of multiple objects within an image. しかし、著者らが発見した例は、画像内の1つのオブジェクトに限られており、画像内の複数のオブジェクトではなく、イメージラベルに焦点を当てていた。 0.62
Besginow et al [9] propose an alternative approach that generates labeled data for a single object. besginow et al [9]は、単一のオブジェクトに対してラベル付きデータを生成する別のアプローチを提案している。 0.65
They use a hardware setup to capture an object from multiple angles. ハードウェアのセットアップを使って、複数の角度からオブジェクトをキャプチャする。 0.73
They also supply simple interfaces to allow some user customization for a semiautomated approach. 半自動アプローチのユーザカスタマイズを可能にするためのシンプルなインターフェースも提供する。 0.78
The tool then generates the object detection labels. その後、ツールはオブジェクト検出ラベルを生成する。 0.79
However, this approach is limited to objects that fit within the hardware setup. しかし、このアプローチはハードウェア設定に適合するオブジェクトに限定されます。 0.77
Additionally, they only target a single network output format. さらに、単一のネットワーク出力フォーマットのみを対象としている。 0.71
Additionally, Dutta et al [10] provide an overview of a number of automatic labeling methods that leverage machine learning techniques. さらに、dutta et al [10]は、機械学習技術を活用する多数の自動ラベリング手法の概要を提供する。 0.75
This includes nearest neighbor approaches, neural network approaches, and SVM classifiers. これには、最も近い隣のアプローチ、ニューラルネットワークアプローチ、SVM分類器が含まれる。 0.61
The nearest neighbor approaches use already labeled images to match based on visual similarity. 最寄りのアプローチは、視覚的類似性に基づいて、すでにラベル付きイメージを使用している。 0.53
This requires a sufficiently diverse collection of labeled images, which may not exist for new datasets. これはラベル付き画像の十分な多様な収集を必要とし、新しいデータセットには存在しない可能性がある。 0.60
All approaches also potentially result in some mislabeling, depending on the accuracy of the model used. すべてのアプローチは、使用するモデルの正確性によって、いくつかの誤解をもたらす可能性がある。 0.54
Some researchers have also begun to use other sensor modalities to automatically label training data. 一部の研究者は、トレーニングデータを自動的にラベル付けするために、他のセンサーモードも使用し始めた。
訳抜け防止モード: 一部の研究者も始まっている 他のセンサーを使って トレーニングデータを自動的にラベル付けします
Kuhner et al [11] propose the use of LiDAR in driverless cars to automatically create semantic labels for the image data generated by the car’s cameras. Kuhnerら[11]は、自動運転車にLiDARを使用することで、車のカメラが生成した画像データのセマンティックラベルを自動生成する。 0.75
Their approach quickly annotates images of roads and curbs for use in training neural networks used to detect and navigate around these objects. 彼らのアプローチは、道路と縁石の画像に素早く注釈を付けて、これらのオブジェクトを検出およびナビゲートするために使用されるニューラルネットワークのトレーニングに使用する。 0.59
This approach offers fast generation of labeled real world data but does not generalize to other problem domains. このアプローチはラベル付き実世界のデータを高速に生成するが、他の問題領域には一般化しない。 0.60
Lastly, the authors were unable to find any examples of data generation tools using ROS and Gazebo for scene simulation. 最後に、著者らはシーンシミュレーションにROSとGazeboを使ったデータ生成ツールの例を見出すことができなかった。
訳抜け防止モード: 最後に著者は出来なかった シーンシミュレーションにROSとGazeboを使用したデータ生成ツールの任意の例を見つける。
Some synthetic generation methods use general purpose simulation environments. いくつかの合成生成法は汎用シミュレーション環境を用いる。 0.71
For example, Lee et al. 例えば、Lee et al。 0.65
[8] use the 3D game engine Unity to generate synthetic training data of wrenches in an industrial environment. [8]3dゲームエンジンunityを使用して、産業環境でレンチの合成トレーニングデータを生成する。 0.86
Others, like the LGSVL simulator [12], are domain specific. LGSVLシミュレータ[12]のように、ドメイン固有のものもあります。 0.78
3 Version 1 The first version of this utility originated in a previous project that used YOLOv3 [13] and the Darknet [14] framework. 3 バージョン1 このユーティリティの最初のバージョンは、YOLOv3[13]とDarknet[14]フレームワークを使用した以前のプロジェクトに由来する。 0.82
Part of that project explored the impact of several setup parameters, such as image resolution, on network accuracy. プロジェクトの一部は、画像解像度などのいくつかの設定パラメータがネットワークの精度に与える影響を調査した。 0.76
This required multiple datasets composed of several simulated robots in arbitrary poses within a simulated environment. これは、シミュレーション環境内で任意のポーズで複数のシミュレーションロボットからなる複数のデータセットを必要とした。 0.65
Performing this labeling by hand was too time consuming. 手作業でこのラベルを付けるのは時間がかかりすぎました。 0.49
To speed this up, the team created a ROS package that automatically generated the necessary data in the correct format. これをスピードアップするためにチームは、必要なデータを正しいフォーマットで自動的に生成するrosパッケージを作成した。
訳抜け防止モード: これをスピードアップする。 チームはROSパッケージを作成しました 必要なデータを 自動的に正しいフォーマットで生成します
By using perfect knowledge of the simulated world, the labels are guaranteed to be accurate. シミュレーションされた世界の完璧な知識を利用することで、ラベルは正確であることが保証される。 0.61
Additionally, the automatic nature of the tool means the authors could run the tool during off hours without the extensive time commitment needed to hand label the data. さらに、ツールの自動的な性質は、データのラベルを手渡す必要のない、オフ時間にツールを実行することができることを意味している。 0.77
The general algorithm is below. 一般的なアルゴリズムは以下の通り。 0.70
The project focused on object detection within single images, so the algorithm uses the entire available space within the simulated environment for robot placement. このプロジェクトは単一画像内の物体検出に重点を置いているため、アルゴリズムはロボット配置のシミュレーション環境内で利用可能な空間全体を利用する。 0.80
Additionally, because of the authors’ familiarity, they chose to write this version of the tool in C++. さらに、作者の慣れ親しんだため、彼らはこのバージョンのツールをC++で書くことにした。 0.78
Version 1 Procedure: バージョン1の手順: 0.90
Load user parameters ロードユーザーパラメータ 0.77
For each required datapoint: 必要なデータポイントごとに: 0.79
image <- capture new image image <- 新しいイメージをキャプチャする 0.90
Write to file(image) file (複数形 files) 0.53
For each object: 各オブジェクトについて: 0.76
selected_pixel <- select pixel from map pixels (1) selected_pixel <- select pixel from map pixel (1) 0.91
If selected_pixel is not free: selected_pixel が無料でない場合 0.78
GOTO (1) radius <- load user specified safety radius 後藤(1) radius <-load user specific safety radius 0.58
outer_pixels <- Bresenham’s Circle Algo- outer_pixels <-ブレセナムの円アルゴ- 0.69
rithm(selected_pixel , radius) rithm (複数形 rithms) 0.56
For each outer_pixel in outer_pixels: outer_pixel (複数形 outer_pixels) 0.56
line_pixels <- Bresenham’s Line Algo- line_pixels <- Bresenham's Line Algo- 0.96
rithm(selected_pixel , outer_pixel) rithm(selected_pixel , outer_pixel) 0.75
For each line_pixel in line_pixels: line_pixel (複数形 line_pixels) 0.60
If line_pixel is not free: line_pixelが無料でない場合: 0.76
GOTO (1) position <- transform selected_pixel to coordinate 後藤(1) position <- transform selected_pixel to coordinate 0.70
orientation <- select value from (-pi, pi] orientation <- select value from (-pi, pi] 0.78
Move object in simulation(position, orientation) シミュレーションにおける移動物体(位置, 向き) 0.85
bounding_rectangle <- Project Shape into Image bounding_rectangle <- Project shape into Image 0.92
Write to label file(bounding_rectan gle, class id) ラベルファイルに書き込む(bounding_rectangle, class id) 0.88
To execute the program, the user first specifies several settings via ROS’s parameter server, which is a standard way to customize routines in ROS. プログラムを実行するために、ユーザはまず、ROSのパラメータサーバを介していくつかの設定を指定する。
訳抜け防止モード: プログラムを実行するには ユーザはまず、ROSのパラメータサーバを介していくつかの設定を指定する。 ROSのルーチンをカスタマイズする標準的な方法です。
Specifically, this includes information about where to save files, which robots to use, and each robot’s footprint, height, and a safety radius that ensures no accidental collisions during object placement. 具体的には、ファイルの保存場所、使用するロボット、そして各ロボットの足跡、高さ、そして物体の配置中に偶然に衝突しないようにする安全半径などの情報が含まれる。 0.78
Additionally, the user must publish a map of the environment indicat- さらに、ユーザは環境インデックスの地図を公開しなければならない。 0.67
ing which areas are free or occupied. どの地域が自由または占領されているか 0.51
This map also follows a standard ROS convention and uses pixel values to indicate if a space’s occupancy status. このマップはまた、標準的なROS規約に従い、空間の占有状況を示すためにピクセル値を使用する。 0.72
After providing this information and starting the simulation environment, the user can then run the generation utility and let it auto-generate until finished. この情報を提供し、シミュレーション環境を開始すると、ユーザーは生成ユーティリティを実行し、終了まで自動生成することができる。 0.83
While running, the tool selects a random pose for the robot. 実行中、このツールはロボットのランダムなポーズを選択する。 0.73
To do this, it picks a free pixel on the map, then uses the robot’s safety radius, Bresenham’s Line drawing algorithm [15], and Bresenham’s Circle drawing algorithm [16] to identify if the robot can fit at the selected spot. これを行うには、地図上のフリーピクセルを選択し、ロボットの安全半径、ブレセナムのライン描画アルゴリズム[15]、およびブレセナムのサークル描画アルゴリズム[16]を使って、ロボットが選択された場所に収まるかどうかを判断する。
訳抜け防止モード: これを行うには。 地図上に無料のピクセルを選び、ロボットの安全半径を使う。 Bresenham's Line drawing algorithm [15 ], and BresenhamのCircle drawingアルゴリズム [16 ]は、ロボットが選択した場所に収まるかどうかを識別する。
The drawing algorithms identify which pixels the robot could potentially occupy for a given pose. 描画アルゴリズムは、ロボットが特定のポーズのために占有できるピクセルを特定する。 0.70
It then checks if each pixel is already occupied or not. そして、各ピクセルが既に占有されているかどうかをチェックする。 0.57
If any pixel is occupied, the algorithm selects a new position, and the process begins again. ピクセルが占有された場合、アルゴリズムは新しい位置を選択し、プロセスが再開される。 0.82
If the space is free, the algorithm selects a random orientation for the robot. 空間が自由であれば、アルゴリズムはロボットのランダムな向きを選択する。 0.77
The algorithm then requests Gazebo to move the robot to that pose. そしてアルゴリズムは、Gazeboにロボットをそのポーズに移すよう要求する。 0.76
This process then repeats for each robot. このプロセスはロボットごとに繰り返される。 0.82
After each robot is in position, the tool captures the image data from a simulated camera within the environment, using ROS’s publisher/subscriber model. 各ロボットの位置が決まった後、このツールはROSのパブリッシャ/サブスクライバモデルを使用して、環境内のシミュレーションカメラから画像データをキャプチャする。 0.79
When capturing the image, it also captures the camera information, such as its intrinsic parameters. イメージをキャプチャする際には、カメラ情報(例えば固有のパラメータ)もキャプチャする。 0.60
Using this information, the tool then generates the labels using the algorithm shown below. この情報を使って、ツールが下記のアルゴリズムを使ってラベルを生成する。 0.79
It uses the robot’s pose and its user-specified shape to construct a rectangular cuboid that circumscribes the robot in the robot’s frame of reference. ロボットのポーズとユーザーが指定した形状を使って、ロボットの参照フレームにロボットを囲む長方形の立方体を作る。 0.75
It then transforms the vertices of this cuboid into the image using known positional data and the camera’s parameters. そして、既知の位置データとカメラのパラメータを使って、このキューブイドの頂点を画像に変換する。 0.74
Next, it circumscribes a bounding box around the projected vertices using OpenCV [17]. 次に、opencv[17]を使用して、投影された頂点の周りの境界ボックスを囲む。 0.59
Because these are vertices of a bounding shape, this bounding box is guaranteed to encompass the robot on the image. これらは境界形状の頂点であるため、この境界ボックスは画像上にロボットを包含することが保証される。 0.73
As proof, consider the case where the object has some feature outside of the bounding rectangle on the image. 証明として、オブジェクトが画像上の境界長方形の外側に何らかの特徴を持つ場合を考える。 0.75
If this is true, then the vertices projected on the image would also extend outside the rectangle, as the vertices circumscribe the object in 3D space. もしこれが真なら、画像上に投影された頂点は、頂点が物体を3次元空間で囲むように長方形の外にも広がる。 0.74
However, the bounding rectangle is constructed to circumscribe all the projected vertices, which contradicts the original premise of this case. しかし、有界矩形は、このケースの元々の前提と矛盾する全ての射影頂点を囲むように構成される。 0.74
Therefore, this bounding box on the image contains the entire robot within it. したがって、画像上のこのバウンディングボックスは、その中のロボット全体を含んでいる。 0.69
Project Shape into Image(object): Project Shape into Image(オブジェクト): 0.82
vertices <- load user specified object shape vertices <- load user specified object shape 0.76
transform <- lookup transform to camera frame(object) カメラフレーム(object)への<-ルックアップ変換の変換 0.75
projected_vertices <- apply transform(vertices, trans- projected_vertices <- apply transform(vertices, trans- 0.98
form) camera_matrix <- lookup camera parameters 形式) camera_matrix <-ルックアップカメラパラメータ 0.81
projected_points <- apply camera projec- projected_points <- apply camera projec- 0.92
tion(projected_verti ces, camera_matrix) tion(projected_verti ces, camera_matrix) 0.75
bounding_rectangle <- bounding_rectangle <- 0.94
OpenCV.BoundingRect( projected_points) OpenCV.BoundingRect( Projected_points) 0.65
Return bounding_rectangle return bounding_rectangle 0.67
Lastly, the tool writes the values to file in the correct format. 最後に、ツールは正しいフォーマットでファイルに値を書き込む。 0.68
Darknet datasets consist of two elements. Darknetデータセットは2つの要素から構成される。 0.59
The first is the set of raw, unlabeled images. 1つ目は、生のラベルのない画像のセットです。 0.54
The second element is an associated text file for each image. 第2の要素は、各画像の関連テキストファイルである。 0.79
Each line of the text file contains the infor- テキストファイルの各行は、inforを含む。 0.77
mation for one object within the image. 画像内の1つのオブジェクトのmation。 0.75
This information includes the class id for the class of the object, and the size and location of the bounding box, expressed as fractions of the overall width and height of the image. この情報は、オブジェクトのクラスのためのクラスIDと、画像の全体幅と高さの分画として表される境界ボックスのサイズと位置を含む。 0.75
For example, a bounding box highlighting an object with class id 1, centered on the image with width and height one quarter of the respective width and height for the image would be labeled as “1 0.5 0.5 0.25 0.25” 例えば、画像の幅と高さの4分の1のイメージを中心に、クラスID1でオブジェクトをハイライトするバウンディングボックスは、"1 0.5 0.5 0.25 0.25"とラベル付けされる。 0.82
This entire process can then repeat until the tool creates the desired amount of data. このプロセス全体は、ツールが所望のデータ量を生成するまで繰り返すことができる。 0.82
Additionally, the user can easily rerun the process with new settings to create validation or test datasets, or to explore new scenarios. さらに、検証やデータセットのテスト、新たなシナリオの探索など、新たな設定で簡単にプロセスを再実行することができる。
訳抜け防止モード: さらに、ユーザーは新しい設定で簡単にプロセスを再実行できる 検証やデータセットのテスト、新たなシナリオの探索などです。
Rerunning takes no added user input other than the time required to change settings. リランは設定を変更するのに必要な時間以外、追加のユーザ入力を受け付けない。 0.67
Using this method, the authors were able to generate a fully labeled 1,000 image synthetic dataset with about 10 minutes of setup time and 30 minutes of data generation time. この方法を用いて、著者らは約10分間のセットアップ時間と30分間のデータ生成時間で、完全なラベル付き1,000画像合成データセットを生成することができた。 0.73
The setup time is the only time that requires user operation and does not increase as the size of the generated dataset increases. セットアップ時間はユーザ操作を必要とする唯一の時間であり、生成されたデータセットのサイズが大きくなると増加しない。 0.79
The data generation time runs without the user and scales approximately linearly with the number of samples. データ生成時間はユーザなしで実行され、サンプル数とほぼ線形にスケールする。 0.80
Once generated, the data was immediately used for network training without any additional post-processing. データが生成されると、追加の後処理なしでネットワークトレーニングに即座に使用される。 0.69
This allowed the team to quickly explore several elements to the project without spending work time on data creation. これによりチームは、データ作成に時間を費やすことなく、プロジェクトのいくつかの要素をすばやく探すことができた。 0.62
However, there are some drawbacks to this tool. しかし、このツールにはいくつかの欠点がある。 0.68
As mentioned previously, the algorithm targets the Darknet format and design considerations, such as moving the robot to arbitrary positions on the map, were made because of it. 前述したように、アルゴリズムはダークネットフォーマットをターゲットにしており、ロボットを地図上の任意の位置へ移動させるといった設計上の考慮が原因でなされた。 0.71
Any new format would require extensive rewrites. 新しいフォーマットには広範な書き直しが必要だ。 0.73
Additionally, there are several required dependencies for the package to work. さらに、パッケージが動作するために必要な依存関係もいくつかある。 0.69
While some are standard ROS packages found in any ROS installation, some dependencies are less common. 標準のROSパッケージであるものもあるが、いくつかの依存関係は一般的ではない。 0.67
Some were even lab specific ROS packages, preventing widespread use of this tool. いくつかはラボ固有のROSパッケージでもあり、このツールが広く使われるのを防いだ。 0.53
When the main project began work on a second phase, it became clear that the team required a tool with greater flexibility. メインプロジェクトが第2フェーズで作業を始めたとき、チームはより柔軟性のあるツールを必要としていることが分かりました。 0.71
4 Version 2 After completion of the first phase of the project, the underlying research expanded to include improved neural network methods. 4 バージョン2 プロジェクトの最初のフェーズが完了した後、基礎となる研究は、改良されたニューラルネットワークメソッドを含むように拡張された。 0.75
This included new network types, more detailed detection, and the use of video data instead of isolated images. これには、新しいネットワークタイプ、より詳細な検出、分離されたイメージの代わりにビデオデータの使用が含まれる。 0.71
Adapting the existing synthetic generation tool would require significant work. 既存の合成生成ツールに適応するには、かなりの作業が必要になる。 0.48
Therefore, the team took the opportunity to redesign the tool to promote greater modularity and reduce the need for future rewrites. そのため、チームは、モジュール化を促進し、将来の書き直しの必要性を減らすために、ツールを再設計する機会を得た。
訳抜け防止モード: そのため、チームは機会を得た モジュール化を促進するツールを再設計し、将来の書き換えの必要性を減らす。
The four primary goals for this version were as follows. このバージョンの主な目標は次の4つであった。 0.78
• Allow the user to specify and label video frames and sequential images to capture •ユーザがビデオフレームとシーケンシャルな画像を指定しラベル付けしてキャプチャできるようにする 0.78
motion between images. • Use a modular structure to allow the easy creation of new data formats as needed. 画像間の動き。 • 新しいデータフォーマットを必要に応じて簡単に作成できるようにモジュール構造を使用する。 0.87
• Generate data to train instance segmentation networks. •インスタンスセグメンテーションネットワークをトレーニングするためのデータを生成する。 0.66
• Reduce the required dependencies to run the tool, ideally to only a few that are likely to already exist on a computer with ROS and neural network frameworks installed. • ros とニューラルネットワークフレームワークがインストールされているコンピュータにすでに存在するであろう少数のコンピュータに対して、ツールを実行するために必要な依存関係を減らすことが理想的です。 0.70
Additionally, the team decided to rewrite the entire package in Python. さらに、チームはパッケージ全体をPythonで書き直すことにした。 0.82
Python is a primary language amongst both data scientists and ROS users, so any potential users are more likely to be familiar with Python than they would be with C++. PythonはデータサイエンティストとROSユーザの双方で主要な言語であるため、潜在的なユーザはC++よりもPythonに精通している可能性が高い。 0.91
4.1 Motion Generation 4.1 モーションジェネレーション 0.70
The first version of the generation tool created sets of unrelated images, so the tool moved objects to arbitrary locations at each successive image it generated. 生成ツールの最初のバージョンは無関係な画像のセットを作成し、生成した各連続した画像の任意の位置へオブジェクトを移動させた。 0.75
The later stage of the project relies on video data fed in as successive frames to exploit state information between images. プロジェクトの後半段階は、画像間の状態情報を利用するために連続フレームとして供給されるビデオデータに依存している。 0.66
Therefore, the tool needs to generate data the shows an object’s motion across a series of images. したがって、ツールは一連の画像を通してオブジェクトの動きを示すデータを生成する必要がある。 0.86
To support modularity, this requires the ability to specify any possible motion path in an intuitive way, to allow the exploration of a variety of motion scenarios. モジュラリティをサポートするには、様々な動きのシナリオを探索できるように、直感的に任意の運動経路を指定する必要がある。 0.65
Achieving this flexibility uses a built-in capability of ROS. この柔軟性を達成するには、ROSの内蔵機能を使用する。 0.51
ROS uses packages called tf and tf2 [18] to track relative pose information between every frame of reference in the scene throughout the entire simulation. ROSは、tf と tf2[18] と呼ばれるパッケージを使用して、シミュレーション全体を通して、シーン内の参照フレーム間の相対的なポーズ情報を追跡する。
訳抜け防止モード: ROS は tf と tf2 [18 ] シミュレーション全体を通して、シーン内の参照フレーム間の相対的なポーズ情報を追跡する。
This structure is called the TF tree. この構造はtf木と呼ばれる。 0.76
Additionally, ROS supplies a way to record any information published during simulation using a concept known as bag files. さらに、ROSはバッグファイルと呼ばれる概念を使ってシミュレーション中に公開された情報を記録する方法を提供している。 0.70
Bag files are a common means by which researchers record their experiments for use later. バッグファイルは、研究者が実験を後で使用するために記録する一般的な方法である。 0.60
The algorithm simply reads and stores a TF tree from a pre-recorded bag file to generate a record of each objects pose throughout the simulation. アルゴリズムは、あらかじめ記録されたバッグファイルからTFツリーを読み込んで保存し、シミュレーションを通して各オブジェクトのポーズの記録を生成する。 0.79
To generate this bag file, the user can use whatever methods they want. このバッグファイルを生成するには、任意のメソッドを使用できる。 0.65
They can use real or simulated robots, joystick control or autonomous control, or any other means. リアルまたはシミュレートされたロボット、ジョイスティックコントロール、自律制御など、あらゆる手段を使うことができる。 0.75
As TF trees are extremely common in ROS robotic simulations, most setups already produce the required information, so it is a simple matter to record the data. TF木はROSロボットシミュレーションにおいて極めて一般的であるため、ほとんどのセットアップは必要となる情報をすでに生成しているため、データを記録することは簡単な問題である。
訳抜け防止モード: TF木はROSロボットシミュレーションで非常に一般的である。 たいていのセットアップは 必要な情報を生み出しています ですからデータを記録するのは 簡単なことです
Additionally, trees are represented as text information, so the file size is small, even for large simulations. さらに、木はテキスト情報として表現されるので、大きなシミュレーションでもファイルサイズは小さい。 0.82
When run, the algorithm reads in the TF tree from the bag file and uses it as a set of instructions to recreate the scene. 実行時に、アルゴリズムはバッグファイルからTFツリーを読み出し、シーンを再現するための命令セットとして使用する。 0.65
It follows the algorithm shown below. 以下に示すアルゴリズムに従っている。 0.78
Using a user specified frame rate, the algorithm steps through the scene and finds the pose of each object at that moment in time, based on the TF tree. ユーザが指定したフレームレートを使用して、アルゴリズムはシーンを踏み出し、tfツリーに基づいて、その時点における各オブジェクトのポーズを見つける。 0.74
It then moves the objects to those same poses in the Gazebo simulation, recreating the recorded scene. そして、その物体をガゼボシミュレーションで同じポーズに移動させ、記録されたシーンを再現する。 0.72
It is important to note that this recreation does not have to occur in real time. このレクリエーションはリアルタイムで行われる必要はないことに注意する必要がある。 0.69
Since the bag file contains the positions for the entire simulation, the algorithm can spend as much time processing information as needed before moving on to the next frame, similar to the use of Claymation in movies. バッグファイルにはシミュレーション全体の位置が含まれているため、映画でClaymationを使用するのと同じように、次のフレームに移行する前に、アルゴリズムは必要な時間だけ情報を処理することができる。 0.76
Scene Generation Procedure: Load bag file シーン生成手順 Load bag ファイル 0.67
start_time <- identify valid start time from bag file start_time <- bagファイルから有効な開始時刻を識別する 0.76
end_time <- identify valid end time from bag file end_time <- バッグファイルから有効な終了時間を指定する 0.68
frame_rate <- load user specified frame rate frame_rate <-load ユーザ指定フレームレート 0.88
current_time <- start_time current_time <- start_time 0.74
While current_time <- end_time: current_time <- end_time: 0.83
For each object to control: 各オブジェクトを制御するには 0.82
pose <- lookup object pose in bag file pose <- lookup object pose in bag file 0.76
move object in simulation(pose) シミュレーションで物体を動かす(目的) 0.80
scene_data <- Capture all scene data scene_data <-すべてのシーンデータをキャプチャする 0.73
For each format writer: 各フォーマットライターについて: 0.68
format_writer.WriteS cene(scene_data) format_writer.WriteS cene(scene_data) 0.53
current_time <- current_time + (1.0 / frame_rate) current_time <- current_time + (1.0 / frame_rate) 0.72
An added user benefit of this approach is the ability to create new scenes. このアプローチのユーザによるメリットとして,新たなシーンを生成する機能が追加されている。 0.62
When recreating a frame using the TF tree, the algorithm does not care about the visual appearance of the object nor the position of the simulated camera. TF木を用いてフレームを再生する場合、アルゴリズムはオブジェクトの視覚的外観やシミュレートされたカメラの位置を気にしません。 0.75
This means a user can create a single motion plan, then generate data for several different setups. つまり、ユーザーは単一のモーションプランを作成し、複数の異なるセットアップでデータを生成することができる。 0.71
These alternate setups can include different environments, lighting, and camera positions. これらの代替設定は、異なる環境、照明、カメラの位置を含むことができる。 0.63
Alternate setups can also include new types of objects following the same motion paths. 代替設定には、同じモーションパスに従う新しいタイプのオブジェクトも含まれる。 0.77
The algorithm is agnostic to each and does not require an updated bag file. このアルゴリズムは、それぞれに依存せず、更新されたバッグファイルを必要としない。 0.57
For instance, the authors developed some example data in an empty environment, then used the same motion plan in an environment with walls and a new camera position. 例えば、著者らは空の環境でいくつかのサンプルデータを作成し、壁と新しいカメラ位置を持つ環境で同じ動き計画を使用した。 0.81
The authors did not need to change the recorded bag file, so created new datasets without any significant user involvement. 著者らは記録されたバッグファイルを変更する必要はなく、ユーザによる大きな関与なしに新しいデータセットを作成した。 0.69
This motion recording framework provides a robust means to create motion scenes. このモーション記録フレームワークは、モーションシーンを作成する堅牢な手段を提供する。 0.67
The users can move objects through a scene with whatever means they typically use. ユーザーは、通常使うあらゆる手段で、オブジェクトをシーンから移動することができる。 0.82
Then, by recording standard ROS published information, the algorithm has enough data to recreate these scenes in simulation. そして、標準ROS公開情報を記録することで、シミュレーションでこれらのシーンを再現するのに十分なデータが得られる。 0.59
The user can also explore different scenes using the same recorded information without the need to modify the recorded data. ユーザーは、記録されたデータを変更することなく、同じ記録情報を使って異なるシーンを探索することもできる。 0.67
4.2 Modular Formats 4.2 モジュール形式 0.71
Another goal for the tool is to allow arbitrary label formats. このツールのもうひとつの目標は、任意のラベルフォーマットを可能にすることだ。 0.56
If a user desires a new labeling scheme to support some new network, they should be able to quickly write the specific code they need to parse the information, without concern for the rest of the system. ユーザが新しいネットワークをサポートするための新しいラベリングスキームを欲しがるなら、システムの他の部分の心配なしに、情報を解析するために必要な特定のコードを素早く書けるようにすべきである。 0.82
This increases the usefulness of the tool across a range of use cases. これにより、さまざまなユースケースにわたるツールの有用性が向上する。 0.70
To accomplish this, the package uses a plugin style scheme. これを実現するために、パッケージはプラグインスタイルのスキームを使用する。 0.66
Specifically, the package defines a base class for all potential format writers using the Abstract Base Classes (ABC) library [19]. 具体的には、abstract base class (abc) library [19]を使用して、すべての潜在的フォーマットライターのベースクラスを定義する。 0.73
ABC enables the declaration of abstract methods that any inheriting class must implement. ABCは継承クラスが実装しなければならない抽象メソッドの宣言を可能にする。 0.68
Each new format writer is implemented as an inheriting class, thus ensuring that each format writer interfaces correctly with the main algorithm. 新しいフォーマットライターは継承クラスとして実装され、各フォーマットライターがメインアルゴリズムと正しくインターフェースすることを保証する。 0.72
There are three specific methods that each inheriting class must implement. 各継承クラスが実装しなければならないメソッドは3つある。 0.71
The main algorithm keeps a list of all the classes and calls the appropriate methods for each one at the correct time. メインアルゴリズムは、すべてのクラスのリストを保持し、適切なタイミングで各クラスの適切なメソッドを呼び出す。 0.79
The first called method occurs at each successive step through the scene, when the objects are at their recorded poses for that instance in time. 最初の呼び出されたメソッドは、シーンの各ステップで発生し、オブジェクトがそのインスタンスに記録されたポーズにある。
訳抜け防止モード: 最初に呼び出されるメソッドは、シーンの各ステップで発生します。 オブジェクトが記録された時点のそのインスタンスのポーズにある場合。
The complete scene information, including object poses, the raw image, and pixels masks for each object are all passed to the method. オブジェクトポーズ、生画像、および各オブジェクトのピクセルマスクを含む完全なシーン情報は、すべてメソッドに渡される。 0.71
The method is then only responsible for extracting the specific information the format needs and writing it to file in the correct manner. そのメソッドは、フォーマットが必要とする特定の情報を抽出し、正しい方法でファイルに書き込むだけである。 0.73
The next is a function called at the very end of the entire execution. 次の関数は、実行の終了時に呼び出される関数である。 0.67
This allows the format writers to perform any final steps required by the format. これにより、フォーマットライタはフォーマットに必要な最終ステップを実行することができる。 0.68
For instance, Darknet 例えばダークネットは 0.66
uses a main text file that contains a list of each image in the dataset. データセット内の各イメージのリストを含むメインテキストファイルを使用する。 0.78
The final abstract method is one simply used to indicate if a particular format requires instance segmentation. 最後の抽象メソッドは、特定のフォーマットがインスタンスセグメンテーションを必要とするかどうかを示すために単に使われる。
訳抜け防止モード: 最後の抽象メソッドは 特定のフォーマットがインスタンスのセグメンテーションを必要とするかどうかを示す。
As discussed later, this is only to help improve processing time. 後述するように、これは処理時間を改善するのに役立つ。 0.76
The base class also offers two helper functions that are of use to most formats. ベースクラスは、ほとんどのフォーマットで使用される2つのヘルパー関数も提供する。 0.78
It offers a method that transforms points between frames of reference and another that projects points into an image. 参照フレームと他のフレームの間のポイントを変換し、ポイントをイメージに投影する方法を提供する。 0.75
A common helper function avoids the need to reimplement this transform functionality for each writer. 共通のヘルパー関数は、ライターごとにこの変換機能を再実装する必要をなくす。
訳抜け防止モード: 一般的なヘルパー関数はニーズを避ける ライターごとに変換機能を再実装します
By defining the format writers in this manner, users can add new formats quickly and without reprogramming the core data collection process. このようにフォーマットライタを定義することで、ユーザはコアデータ収集プロセスを再プログラムすることなく、新しいフォーマットを迅速に追加できる。 0.69
For example, adding a Darknet format involves only a few steps. 例えば、ダークネットフォーマットを追加するには、ほんの数ステップしかかからない。 0.61
First, is the scene writing method. まず、シーンの書き方です。 0.61
When the method is called, the Darknet format writer uses the provided information about the objects, including their location and vertices of bounding shapes, to transform the vertices into the image. メソッドが呼び出されると、ダークネットフォーマットのライターは、オブジェクトの位置情報と境界形状の頂点を含む提供された情報を使用して、頂点を画像に変換する。 0.77
From there, the format writer simply determines the pixel bounding box using these projected vertices and writes this bounding box to the right file. そこからフォーマットライターは、投影された頂点を使ってピクセル境界ボックスを単純に決定し、この境界ボックスを正しいファイルに書き込む。 0.73
At the end of the execution, the Darknet format writer then writes the main list. 実行が終わると、ダークネットフォーマットのライタがメインリストを書き込みます。 0.57
Because the base class and main algorithm manages most functionality, this Darknet module is around 100 lines of code with no step more complicated than calling functions or finding an average. 基本クラスと主アルゴリズムがほとんどの機能を管理するため、Darknetモジュールは約100行のコードであり、関数の呼び出しや平均値の検索よりも複雑なステップはない。 0.85
Implementing this functionality took considerably less time than implementing it in Version 1. この機能の実装にはバージョン1.0で実装するよりもかなり時間がかかりました。 0.57
Following this approach, there are currently three formats defined within the package. このアプローチに従い、現在パッケージ内に3つのフォーマットが定義されている。 0.68
They are Darknet [14], a network implementation known as PVNet [20] that uses projected keypoints, and a custom format that uses the vertices projected into an arbitrary frame of reference. それらはDarknet[14]、PVNet[20]として知られるネットワーク実装で、プロジェクションされたキーポイントと、任意の参照フレームに投影された頂点を使用するカスタムフォーマットです。 0.75
By using this modular format structure, users can easily add additional formats without unnecessary rewriting of the core functionality of data collection. このモジュラーフォーマット構造を使用することで、ユーザーはデータコレクションのコア機能を不要に書き換えることなく、簡単に追加フォーマットを追加できる。 0.72
This allows users to extend this tool to new formats without the need for extensive rework. これにより、広範囲なリワークを必要とせずに、このツールを新しいフォーマットに拡張することができる。 0.57
4.3 Instance Segmentation 4.3 インスタンスのセグメンテーション 0.62
An entire subclass of networks performs instance segmentation on image data. ネットワークのサブクラス全体が画像データに対してインスタンスセグメンテーションを実行する。 0.74
This requires labeled data that features unique identifiers for each instance of an object class and indicates which pixels contain an object in a given image. これは、オブジェクトクラスのインスタンスごとにユニークな識別子を特徴付けるラベル付きデータを必要とし、その画像にどのピクセルがオブジェクトを含むかを示す。 0.74
To support labeling data for these networks, this algorithm generates pixel masks to indicate which pixels belong to each object. これらのネットワークのラベル付けデータをサポートするため、このアルゴリズムは各オブジェクトに属するピクセルを示すピクセルマスクを生成する。 0.77
The general algorithm is as shown below. 一般的なアルゴリズムは以下の通りである。 0.72
Fig 1. Shows an example observation generated by the algorithm, along with the raw image of the scene. 図1。 アルゴリズムによって生成された例と、シーンの生のイメージを示す。 0.66
Instance Segmentation Initialization: インスタンス分割初期化: 0.80
subtractor <- OpenCV.CreateBackgro undSubtractorMOG2() subtractor <- OpenCV.CreateBackgro undSubtractorMOG2() 0.63
Remove all objects from scene すべての物体をシーンから取り除く 0.74
For a user specified number of times: ユーザが指定した回数について: 0.82
image <- capture image image <-capture image 0.66
subtractor.apply(ima ge) subtractor.apply(画像) 0.82
Return subtractor Return Subtractor 0.67
Instance Segmentation: インスタンスのセグメンテーション: 0.71
If instance segmentation required: インスタンスセグメンテーションが必要な場合: 0.71
For each object under control: 制御対象の各オブジェクトについて: 0.74
store pose move out of camera view 店のポーズ カメラのビューから離れる 0.69
For each object under control: 制御対象の各オブジェクトについて: 0.74
move back to pose image <- capture image ポーズに戻る image <-capture image 0.58
mask <- subtractor.apply(ima ge) mask <- subtractor.apply(画像) 0.95
mask <- apply image post-processing(mask ) mask <--画像後処理(mask)を適用する 0.92
store mask for use by data writers データライターが使用するストアマスク 0.64
Move out of camera view カメラのビューから離れる 0.69
Fig. 1. A sample raw image collected during the data generation process and associated pixel mask for one of the objects in the scene. フィギュア。 1. データ生成プロセス中に収集されたサンプルの生画像と、シーン内のオブジェクトの1つに関連するピクセルマスク。 0.70
The colors of the mask are inverted for readability. マスクの色は可読性のために反転されます。 0.67
Prior to any steps in the above algorithm, the tool polls each format writer. 上記のアルゴリズムのあらゆるステップに先立って、ツールは各フォーマットライタをポーリングする。 0.74
If no formats require instance segmentation, the tool skips this entire routine. インスタンスのセグメンテーションが必要なフォーマットがなければ、ツールはこのルーチン全体をスキップする。 0.67
This helps increase processing speed by avoiding unnecessary image manipulation. これにより、不要な画像操作を避けることで処理速度が向上する。 0.60
During initialization, the algorithm first creates a background subtractor. 初期化中、アルゴリズムはまずバックグラウンドサブトラクタを生成する。 0.74
It uses OpenCV’s Gaussian Mixture-based implementation [17]. OpenCV の Gaussian Mixture ベースの実装 [17] を使用している。 0.75
A few of the parameters of the subtractor can be user specified to tune performance. サブトラクタのパラメータのいくつかは、パフォーマンスを調整するためにユーザが指定できる。 0.73
It then moves every object out of view of the camera to capture background images. その後、カメラの視界からすべての物体を移動させ、背景画像をキャプチャする。 0.68
The algorithm collects multiple images to account for noise. アルゴリズムはノイズを考慮した複数の画像を集める。 0.77
As each image is captured, the tool applies them to the background subtractor to generate a reference background. 各画像がキャプチャされると、ツールはそれらをバックグラウンドサブトラクタに適用して参照バックグラウンドを生成する。 0.72
The initialized subtractor is then used during scene generation. 初期化サブトラクターはシーン生成時に使用される。 0.65
At each step, the tool moves all objects out of view of the camera. それぞれのステップで、このツールはすべての物体をカメラから外す。 0.62
Then, one at a time, it moves them そして、一度に一つずつ、それらを動かす。 0.63
back to their correct position within the scene. 現場の正しい位置に戻ります 0.52
It then captures the image and runs it through the background subtractor. その後、イメージをキャプチャし、バックグラウンドサブトラクタで実行します。 0.73
Because the object is the only thing in the scene besides the background, the results are a pixel mask indicating which pixels belong to the object. オブジェクトは背景以外のシーンで唯一のものであるため、結果はオブジェクトのどのピクセルに属しているかを示すピクセルマスクである。 0.77
This process continues for each object. このプロセスは各オブジェクトに対して継続する。 0.71
After capturing each object’s pixel mas, the algorithm then moves all objects back into the scene in their correct spots to capture the raw image for that scene. 各オブジェクトのピクセルmasをキャプチャした後、アルゴリズムはすべてのオブジェクトを正しい場所のシーンに戻して、そのシーンの生のイメージをキャプチャする。 0.74
Right after image collection, the algorithm performs some post processing on the pixel masks. 画像収集の直後に、アルゴリズムはピクセルマスクでポスト処理を実行する。 0.69
Using the known 3D bounding shape of the object and the correct transforms into the image, it constructs a bounding box around each object. 物体の既知の3次元境界形状と正しい形状を画像に変換することで、各物体のまわりに有界箱を構築する。 0.78
It then uses this box as a filter for the pixel mask. その後、このボックスをピクセルマスクのフィルターとして使用する。 0.84
No pixel outside of the box is set in the mask, since the box defines a conservative outer bound on possible pixels associated with the object. ボックスの外のピクセルはマスクに設定されておらず、ボックスはオブジェクトに関連付けられた可能性のあるピクセルに保守的な外界を定義する。 0.72
This helps reduce noise in the pixel mask. これはピクセルマスクのノイズを減らすのに役立つ。 0.73
When the tool calls each format writer to label a single scene, it provides these generated pixel masks to the writers. ツールが各フォーマットライタに1つのシーンをラベル付けするように呼び出すと、生成されたピクセルマスクがライターに提供される。 0.59
Currently, layering the masks to correctly match model occlusion in the scene remains an open question and is left to each data writer to manage. 現在、シーン内のモデルオクルージョンと正しく一致するようにマスクを階層化することは、未解決の問題であり、管理するデータライター毎に残されている。
訳抜け防止モード: 現在 マスクを重ねて 現場のモデル・オクルージョンと 正しく一致させています 未解決の質問であり、各データライターが管理する。
While this is an important functionality to include in the core algorithm or data writer base class, the authors chose to defer implementation due to project constraints as none of the formats currently in use by the team require a layered pixel map. これはコアアルゴリズムやデータライターベースクラスに含める上で重要な機能であるが、著者らはプロジェクト制約のため実装を延期することを選択した。
訳抜け防止モード: これはコアアルゴリズムやデータライターベースクラスに含める上で重要な機能である。 著者はプロジェクトの制約のために実装を延期することにしました チームで使われているどのフォーマットも 階層化されたピクセルマップを必要としません
However, one potential approach is to use the object’s Euclidian distance to the camera to decide the ordering layer for the combined mask. しかし、ある潜在的なアプローチは、オブジェクトのユークリッド距離をカメラに使用して、組み合わせたマスクの注文層を決定することである。 0.75
With this capability, the automatic generation of synthetic data can now extend to これにより、合成データの自動生成が拡張できるようになった。 0.71
even more types of neural networks. さらに多くのタイプのニューラルネットワークです 0.79
4.4 Dependencies The last goal with the package was to limit the number of dependencies. 4.4 依存 パッケージの最後の目標は依存関係の数を制限することだった。 0.73
During development, the team carefully selected which packages to use based on what the average ROS data scientist is likely to have installed. 開発中、チームは、平均的なROSデータサイエンティストがインストールしたであろうものに基づいて、どのパッケージを使うかを慎重に選択した。 0.60
Table 1 shows the dependencies. 表1は依存関係を示しています。 0.54
Almost all utilized packages come with the standard ROS installation and the default Python installation. ほとんどすべての利用済みパッケージには、標準のROSインストールとデフォルトのPythonインストールが付属している。 0.71
The only two that do not, OpenCV [17] and NumPy [21], are used for background subtraction, image handling, and array manipulation. OpenCV[17]とNumPy[21]の2つだけが、バックグラウンドサブトラクション、イメージハンドリング、配列操作に使用される。
訳抜け防止モード: そうでないのは opencv [ 17 ] と numpy [ 21 ] の 2 つだけです。 背景減算、画像ハンドリング、配列操作に使用される。
While these are not default packages, the team felt that any researcher working with image data is likely to already have these packages installed. これらはデフォルトのパッケージではないが、画像データを扱う研究者がすでにこれらのパッケージをインストールしている可能性が高いとチームは感じた。 0.70
By limiting these dependencies, the tool is easier to integrate into anyone’s workflow. これらの依存関係を制限することで、ツールが誰のワークフローにも簡単に統合できる。 0.64
Table 1. A list of dependencies required for this package. 表1。 このパッケージに必要な依存関係のリスト。 0.76
Bold dependencies do not come with the default Python and ROS installation. 既定のPythonとROSのインストールには依存しない。 0.67
ROS Packages cv_bridge ROSパッケージ cv_bridge 0.70
gazebo_msgs gazebo_msgs 0.59
geometry_msgs geometry_msgs 0.59
rosbag rospy ロズバッグ ロッピー 0.41
sensor_msgs sensor_msgs 0.59
tf2_ros 5 Usability tf2_ros 5 ユーザビリティ 0.64
Python Packages Pythonパッケージ 0.81
abc cv2 numpy abc cv2 ナムピー 0.64
os The previously discussed goals for this tool ensure that it is straightforward to use for anyone familiar with ROS. os 以前に議論されたこのツールの目標は、ROSに詳しい人なら誰でも簡単に使えることを保証する。 0.73
In general, a user will need to configure the initial setup, run the application, wait for it to finish, then start using the results. 一般的に、ユーザは初期設定を設定し、アプリケーションを実行し、完了するまで待機し、その結果を使い始める必要があります。 0.78
Each step only involves a few actions, if any, to complete. 各ステップは、完了するためのいくつかのアクションのみを含む。 0.79
Additional steps are needed if new formats need incorporated. 新しいフォーマットが組み込まれている場合、追加の手順が必要となる。 0.53
5.1 Setup While setting up the package for a specific job is the most involved step, it is still straightforward. 5.1 設定 特定のジョブのパッケージを設定することが最も重要なステップですが、それでも簡単です。 0.67
The package comes with a detailed README that walks the user through the steps. パッケージには詳細なreadmeが付属しており、ユーザーがステップを進む。 0.64
Additionally, example files document all settings and describe their default behavior. さらに、例ファイルはすべての設定を文書化し、デフォルトの振る舞いを記述する。 0.65
Customizing these settings and completing setup involves three main steps. これらの設定とセットアップのカスタマイズには3つのステップがある。 0.61
First, the user must generate the necessary bag file. まず、ユーザは必要なバッグファイルを生成する必要がある。 0.71
They can do this at any time prior to running the package. パッケージを実行する前に、いつでもこれを行うことができる。 0.70
As discussed above, there are very few constraints for this bag file. 上述したように、このバッグファイルには制約はほとんどありません。 0.71
The user need only record the TF tree while they move objects in the desired motion patterns. ユーザは、望む動きパターンでオブジェクトを移動している間に、tfツリーを記録するだけでよい。 0.68
This is a standard procedure for any ROS user, so most users will already be familiar with this step. これはすべてのROSユーザにとって標準的な手順なので、ほとんどのユーザはこの手順に慣れています。 0.72
After creating the bag file, the user must also create a simulated world in Gazebo. バッグファイルを作成した後、ユーザはGazeboでシミュレートされた世界を作成する必要がある。 0.68
While in most cases, this world will mimic the one used to generate the bag file, that is not necessary. ほとんどの場合、この世界はバッグファイルを生成するために使われるものを模倣しますが、それは必要ありません。 0.72
This environment can be as simple as an empty world or as complicated as a realistic office setup. この環境は、空っぽの世界と同じくらいシンプルで、現実のオフィス設定と同じくらい複雑です。 0.76
The user must place a camera for image capture somewhere within the environment. ユーザーは環境のどこかで撮影するためのカメラを配置しなければならない。 0.65
They must also instantiate a number of objects representative of the objects controlled during bag file creation. また、バッグファイル作成中に制御されるオブジェクトの多数のオブジェクトをインスタンス化する必要がある。 0.66
The object identifiers must match the ones used when creating the bag file. オブジェクト識別子は、バッグファイルを作成するときに使用されるものと一致しなければならない。 0.59
However, visual appearances can differ. しかし、外観は様々である。 0.63
Once the user records the bag file and has the Gazebo world is running, the last setup step is configuring the parameters. ユーザがバッグファイルを記録し、Gazeboの世界が動いていると、最後のセットアップステップはパラメータの設定です。 0.74
ROS uses YAML files to configure parameters from a single file. ROSはYAMLファイルを使用して単一のファイルからパラメータを設定する。 0.75
This is a standard way of customizing ROS packages. これはROSパッケージをカスタマイズする標準的な方法です。 0.82
The package supplies a default YAML file to use as a template. パッケージはテンプレートとして使用するデフォルトのYAMLファイルを提供する。 0.91
It also has documentation on each parameter, many of which have default values if not provided. また、各パラメータに関するドキュメンテーションも用意されており、その多くが提供されない場合、デフォルト値を持っている。 0.58
These parameters specify things such as which bag file to use, the list of objects to control, and where to place output files. これらのパラメータは、使用するバッグファイル、制御するオブジェクトのリスト、出力ファイルの配置場所などを指定する。 0.75
Each data writing format may have its own parameters as well that the user can specify in the same YAML file. 各データ書き込みフォーマットは、ユーザが同じyamlファイルで指定できる独自のパラメータを持つことができる。 0.76
After configuration of the parameters, the data generation is ready to run. パラメータの設定後、データ生成は実行する準備ができています。 0.84
5.2 Execution and Performance After completing setup, the user is ready to run the program. 5.2 実行と性能 セットアップが完了すると、ユーザーはプログラムを実行する準備が整う。 0.79
This is a simple, one line command to start the entire data generation process. これは、データ生成プロセス全体を開始するための単純な一行コマンドです。 0.86
After starting, the user need only wait while the program executes. 開始後、ユーザはプログラムの実行を待たなければならない。 0.81
Starting the program uses a ROS concept called launch files, which is a standard way to start programs with user specified parameters. プログラムを開始するには起動ファイルと呼ばれるROSの概念を使い、これはユーザーが指定したパラメータでプログラムを開始する標準的な方法である。 0.70
When started, the program checks the various user specified values. 起動すると、プログラムは様々なユーザ指定値をチェックする。 0.76
It ensures that each required parameter is set and warns the user if an optional parameter is unspecified. 各パラメータが設定され、オプションパラメータが指定されていないことをユーザに通知する。 0.79
During execution, the package will periodically print the percent complete to the command line to update the user. 実行中、パッケージは定期的にコマンドラインに完了したパーセントをプリントしてユーザを更新する。 0.77
No user interaction is required during execution. 実行中にユーザインタラクションは不要である。 0.72
During development, the authors measured performance of the generation tool. 開発中,著者らは生成ツールの性能を測定した。 0.80
They explored runtimes across different numbers of objects, collections of data writers, and time. 彼らは異なる数のオブジェクト、データライターのコレクション、時間にわたるランタイムを調査した。 0.68
Fig 2 features a summary of results. fig 2は結果の要約を特徴とする。 0.66
There were two types of formats considered, one that requires instance segmentation and one that does not. 検討されたフォーマットには2つのタイプがあり、1つはインスタンスのセグメンテーションを必要とし、もう1つはそうではない。
訳抜け防止モード: 検討された2種類のフォーマットがあり、1つはインスタンスのセグメンテーションを必要とする そして、そうではない。
The authors measured these results using Ubuntu’s time command on a laptop with an i9 processor and 32 GB of memory. 著者らは、i9プロセッサと32gbのメモリを備えたラップトップ上のubuntuのタイムコマンドを使って、これらの結果を測定した。
訳抜け防止モード: 著者はこれらの結果を測定しました i9プロセッサと32gbのメモリを持つラップトップ上でubuntuのtimeコマンドを使用する。
Fig. 2. A comparison of runtimes across different numbers of objects and different format writers. フィギュア。 2. 異なる数のオブジェクトと異なるフォーマットライターにまたがるランタイムの比較。 0.66
As currently designed, this package is not fast. 現在設計されているように、このパッケージは高速ではない。 0.58
To promote modularity, some efficiency was sacrificed. モジュール性を促進するため、いくつかの効率性が犠牲になった。 0.47
For example, depending on the format specifications, multiple format writers might have to manipulate the data in the same way. 例えば、フォーマット仕様によっては、複数のフォーマットライターが同じ方法でデータを操作する必要がある。 0.66
The result is a running time that scales with the number of data writers. その結果、データライターの数に応じてスケールする実行時間が発生する。 0.77
Additionally, the tool moves each object at each iteration. さらに、ツールは各イテレーションで各オブジェクトを移動します。 0.78
This increases the running time as the number of objects increase, as shown in Fig 2. これは、図2に示すように、オブジェクト数が増えると実行時間が増加する。 0.85
The figure also shows the relative impact of performing instance segmentation. 図はまた、インスタンスセグメンテーションの実行による相対的な影響を示している。 0.59
The format that requires it grows at a faster rate as the number of robots increase. 必要なフォーマットは、ロボットの数が増えるにつれて、より高速に成長する。 0.78
This is due to the background subtractor. これはバックグラウンドサブトラクタによるものです。 0.68
As written, it runs once for each robot in a scene. 記述通り、シーン内の各ロボットに対して1回実行される。 0.72
However, the main algorithm also queries each format writer and skips this step if not needed, resulting in the faster execution rate seen in the figure. しかし、メインのアルゴリズムは各フォーマットの書き手に対してクエリを行い、必要がなければこのステップをスキップする。
訳抜け防止モード: しかし、主アルゴリズムは各フォーマットライタをクエリし、必要なければこのステップをスキップする。 その結果、図に示すように、実行速度が速くなります。
While the data generation time is lengthy, it is important to note that it is fully automated. データ生成時間は長いが、完全に自動化されていることに注意する必要がある。 0.77
Once the algorithm begins to collect data, no user intervention is necessary. アルゴリズムがデータ収集を開始すると、ユーザによる介入は不要になる。 0.76
This is one of the primary benefits to this package. これはこのパッケージの主な利点の1つです。 0.76
5.3 After Generation Once execution is complete, the user has one or several complete sets of labeled data. 5.3 世代後 実行が完了すると、ユーザはラベル付きデータの1つまたは複数の完全なセットを持つ。 0.70
This data is already in the correct format for training and can be used straight away without further user effort required. このデータは、すでにトレーニング用の正しいフォーマットにあり、さらなるユーザの努力なしにすぐに使用できます。 0.80
The only limited post processing a user might need is splitting out a test or validation set. ユーザが必要とする唯一の限定的なポスト処理は、テストまたは検証セットを分割することです。 0.70
5.4 New Formats 5.4 新しいフォーマット 0.72
When a new data format is required, the user must develop the code to write the format correctly. 新しいデータフォーマットが必要な場合、ユーザはフォーマットを正しく記述するためのコードを開発する必要がある。 0.77
Following the above-mentioned structure, the user must implement a new class with a few required methods. 上記の構造に従い、ユーザはいくつかの必要なメソッドで新しいクラスを実装する必要がある。 0.76
Then, the user includes this new format class in the list of formats to call during execution. 次に、ユーザは、実行中に呼び出すフォーマットのリストに、この新しいフォーマットクラスを含める。 0.72
The included README documents this entire process. READMEを含むこのプロセス全体のドキュメント。 0.78
To start making a new format, the user defines a new Python class. 新しいフォーマットを作成するために、ユーザは新しいpythonクラスを定義します。 0.84
This class should inherit the base class offered by the package. このクラスはパッケージが提供するベースクラスを継承すべきである。 0.79
Because this base class has abstract methods, the user must implement them and will receive an error if they do not and try to run the code anyway. このベースクラスには抽象メソッドがあるため、ユーザはそれを実装し、もしそうでなければエラーを受け取り、とにかくコードを走らせようとする。 0.84
Within this new class, the user should initialize any parameters that the format requires. この新しいクラスでは、ユーザはフォーマットに必要なパラメータを初期化する必要がある。 0.78
The base class already looks up the user specified output location, but the inheriting class can expand this to include any configuration settings needed. ベースクラスはすでにユーザが指定した出力ロケーションを検索しているが、継承クラスはこれを拡張して、必要な構成設定を含めることができる。 0.69
Next, the user implements the method called at each scene. 次に、ユーザは各シーンで呼び出されるメソッドを実装する。 0.80
This is the primary method used to write data to file. これは、ファイルにデータを書き込むのに使用される主要なメソッドです。 0.67
Each time it is called, the method is provided a list of all objects, their locations, object specific information such as keypoints, and image data. 呼び出されるたびに、メソッドはすべてのオブジェクト、その位置、キーポイントや画像データなどのオブジェクト固有の情報のリストが提供される。 0.78
This method should use the provided information to translate positional information into appropriate labels. この方法は、提供された情報を用いて位置情報を適切なラベルに変換するべきである。 0.58
It should also write the necessary label files, as dictated by the format. フォーマットによって決定されるように、必要なラベルファイルも記述する必要がある。 0.68
After that, the user implements a final method called at the end of data generation. その後、ユーザはデータ生成の終了時に呼び出される最後のメソッドを実装する。 0.84
This provides an opportunity for any cleanup operations or writing metainformation, such as lists of label file locations. これにより、クリーンアップ操作や、ラベルファイルの場所のリストなどのメタ情報の記述の機会が得られます。 0.59
Lastly, the user should specify if the format requires instance segmentation pixel masks. 最後に、ユーザーはフォーマットがインスタンスセグメンテーションピクセルマスクを必要とするかどうかを指定する必要がある。 0.56
As discussed previously, this allows the main algorithm to reduce computational time if no format requires segmentation. 前述したように、メインアルゴリズムでは、セグメンテーションを必要としない場合、計算時間を削減できる。 0.70
After defining the class, the user then includes it in the library and list of classes called by the algorithm. クラスを定義した後、ユーザはアルゴリズムによって呼び出されたクラスのライブラリとリストにそれを含める。 0.92
These are both single line steps. これらはいずれも単行ステップである。 0.68
Inclusion in the library involves importing the class into the overall data format module. ライブラリへのインクルージョンには、クラスを全体データフォーマットモジュールにインポートすることが含まれる。 0.73
Adding it to the tool involves instantiating an object within the main program. ツールにそれを追加すると、メインプログラム内のオブジェクトをインスタンス化する。 0.73
The documentation illustrates these steps using previous examples. ドキュメントは、これらの手順を以前の例を使って説明している。 0.46
After completion, the main code will automatically call the correct methods at the appropriate time. 完了後、メインコードは適切なタイミングで正しいメソッドを自動的に呼び出す。 0.74
By creating the data writer class, defining the methods, and including it in the main tool, the user can quickly add new data formats. データライタークラスを作成し、メソッドを定義し、それをメインツールに含めることで、ユーザはすぐに新しいデータフォーマットを追加できる。 0.81
Creating these new definitions does not require changing the main code. これらの新しい定義を作成するには、メインコードを変更する必要はない。 0.60
By including this functionality, the usefulness of the tool can continue to expand as the library of existing formats grows. この機能を含めることで、既存のフォーマットのライブラリが成長するにつれて、ツールの有用性は拡大し続けることができる。 0.74
5.5 Vignette 5.5 Vignette 0.71
As an example of the efficiency of the tool, consider the following anecdote. ツールの効率性の一例として、次のような逸話がある。 0.72
The authors were exploring a new network. 著者たちは新しいネットワークを探していた。 0.68
They used this tool to generate data for a simple setup just to ensure the network was working. 彼らはこのツールを使って単純なセットアップのためのデータを生成し、ネットワークの動作を確実にした。 0.66
After creating the data, they found that the camera placement and resolution did not have sufficient coverage of specific parts of the scene. データを作成した結果、カメラの配置と解像度がシーンの特定の部分を十分にカバーしていないことが分かった。 0.72
The authors adjusted the camera information in simulation and still used the same settings and recorded bag file to generate new data. 著者らはシミュレーションでカメラ情報を調整し、同じ設定と記録されたバッグファイルを使って新しいデータを生成する。 0.80
The entire process of creating a new dataset took approximately 10 minutes of human effort compared to 新しいデータセットを作成するプロセス全体では、人的労力が約10分かかった。 0.79
an estimated 1-2 hours for manual labeling. 手動ラベリングの 推定1-2時間 0.56
The authors then repeated this process a few times with new setups and simulated frame rates with similar levels of effort required. 著者らはその後、新しいセットアップでこのプロセスを数回繰り返し、同じレベルの労力でフレームレートをシミュレートした。 0.64
Additionally, the authors explored a new type of network. さらに、著者らは新しいタイプのネットワークを探求した。 0.75
The authors quickly wrote up an additional plugin to write data for this new format. 著者らはすぐに、この新しいフォーマットのデータを書き込むプラグインを作成した。 0.65
They completed the plugin and integrated it into the existing list with the others within an hour. 彼らはプラグインを完成させ、1時間以内に既存のリストに統合した。 0.72
Data generation then proceeded as usual. データ生成は通常通り進行した。 0.76
The result was a smooth data generation process that allowed the authors to spend minimal effort to create the data and more time exploring network optimization. その結果、スムーズなデータ生成プロセスができ、著者はデータの作成に最小限の労力を費やすことができ、ネットワーク最適化により多くの時間を費やすことができた。 0.60
6 Remaining Questions This synthetic data generation tool is a flexible approach to generating data for a range of neural network formats. 6 残る質問 この合成データ生成ツールは、さまざまなニューラルネットワークフォーマットのデータを生成するための柔軟なアプローチである。 0.77
However, there are still future improvements that would further enhance useability. しかし、まだ使用性をさらに向上させるであろう将来的な改善がある。 0.68
This includes increasing speed, expanding the format library, and GUI development. これには、スピードの向上、フォーマットライブラリの拡張、GUI開発が含まれる。 0.70
As discussed above, the algorithm suffers from poor scalability. 上述したように、このアルゴリズムはスケーラビリティに乏しい。 0.61
While modularity typically introduces some overhead, code changes can likely improve the runtime. モジュール性は一般的にオーバーヘッドを生じさせるが、コードの変更は実行時を改善する可能性がある。 0.55
For example, some of the underlying algorithms can be rewritten to store and manipulate data more efficiently. 例えば、基礎となるアルゴリズムのいくつかは、データの保存と操作をより効率的にするために書き換えることができる。 0.59
As many routines are called multiple times, any performance gain is likely to have significant impact on overall runtime. 多くのルーチンが複数回呼ばれるため、パフォーマンスの向上はランタイム全体に大きな影響を与える可能性が高い。 0.69
Additionally, expanding the data format library increases useability. さらに、データフォーマットライブラリの拡張は、利用性を高める。 0.69
Since the tool allows easy development of format writers, users can quickly incorporate new formats into the available list. このツールはフォーマットライターを簡単に開発できるので、ユーザーはすぐに利用可能なリストに新しいフォーマットを組み込むことができる。 0.66
This has the added benefit of testing underlying assumptions on the algorithm to ensure it is truly useable across a wide range of networks. これにより、アルゴリズムの基盤となる仮定をテストし、広範囲のネットワークで真に使用できるようにするというメリットが加わった。
訳抜け防止モード: これは追加の利点があります アルゴリズムの根底にある仮定をテストして 広範囲のネットワークで真に使えるようにします
The authors are already exploring Mask-RNN [22] and format writers to mimic common dataset formats, such as the Common Objects in Context (COCO) dataset [23]. 著者らはすでに、Common Objects in Context(COCO)データセット[23]のような一般的なデータセットフォーマットを模倣するために、Mask-RNN [22]とフォーマットライターを探索している。 0.68
Lastly, the inclusion of a GUI simplifies setup. 最後に、GUIを含めることでセットアップが簡単になる。 0.68
While the current approach follows familiar ROS conventions, a well-designed GUI offers a means to guide the user through the setup process and address potential issues prior to running the tool. 現在のアプローチは慣れ親しんだROSの慣習に従っているが、よく設計されたGUIは、設定プロセスを通じてユーザーを誘導し、ツールを実行する前に潜在的な問題に対処する手段を提供する。 0.57
This would reduce errors and further decrease setup time. これによりエラーを減らし、セットアップ時間を短縮する。 0.69
The primary benefits of this tool are its simplicity and minimal user effort. このツールの主な利点は、単純さと最小限のユーザー努力である。 0.76
Increasing the runtime, adding additional formats, and developing a GUI all contribute to these benefits and make the tool more useful. ランタイムを増やし、フォーマットを追加し、GUIを開発することは、これらの利点に貢献し、ツールをより便利にします。 0.67
7 Conclusion This paper proposes an automated tool for generating annotated image training data for various object detection networks. 7 結論 本稿では,様々な物体検出ネットワークのための注釈付き画像学習データを生成する自動ツールを提案する。 0.74
The proposed package is the first to use ROS and Gazebo for the purpose of automatically generating synthetic annotated machine learning training data. 提案パッケージは,合成アノテーション付き機械学習トレーニングデータの自動生成を目的として,ROSとGazeboを使用した最初のパッケージである。 0.73
Flexibility in package parameters like the simulated world, recorded motion plans, and camera parameters allows for rapid generation of diverse datasets with minimal effort from users. シミュレートされた世界、記録されたモーションプラン、カメラパラメータといったパッケージパラメータの柔軟性により、ユーザによる最小限の労力で、さまざまなデータセットの迅速な生成が可能になる。 0.61
Additionally, the ability to easily add more data format plugins allows users to tailor the package to their specific data generation needs. さらに、より多くのデータフォーマットプラグインを追加することで、ユーザーは特定のデータ生成ニーズに合わせてパッケージをカスタマイズできる。 0.76
Using this toolset, the authors created three fully annotated datasets in three このツールセットを使って、著者らは3つの完全な注釈付きデータセットを作成した。 0.49
separate formats with about 15 minutes of manual setup and several hours of handsoff running time, depending on the specific configuration. 15分間の手動セットアップと数時間のハンズオフ実行時間を持つフォーマットを、特定の構成に応じて分離する。 0.83
This package drastically reduces hands-on data collection and labeling time while ensuring the generation of accurate data in a modular way to allow various use cases. このパッケージは、さまざまなユースケースを可能にするモジュール方式で正確なデータの生成を確保しながら、ハンズオンデータ収集とラベリング時間を劇的に短縮する。 0.68
References 1. 2. 参考文献 1. 2. 0.79
3. 4. 5. 6. 3. 4. 5. 6. 0.85
7. 8. 9. Quigley, M., Gerkey, B., Conley, K., Faust, J., Foote, T., Leibs, J., Berger, E., Wheeler, R., Ng, A.: ROS: an open-source Robot Operating System. 7. 8. 9. Quigley, M., Gerkey, B., Conley, K., Faust, J., Foote, T., Leibs, J., Berger, E., Wheeler, R., Ng, A.: ROS: オープンソースのロボットオペレーティングシステム。 0.85
In: Proc. of the IEEE Intl. In: Proc。 IEEE Intlの略。 0.77
Conf. on Robotics and Automation (ICRA) Workshop on Open Source Robotics. Conf On Robotics and Automation (ICRA) Workshop on Open Source Robotics 0.63
, Kobe, Japan (2009) Koenig, N., Howard, A.: Design and use paradigms for Gazebo, an open-source multirobot simulator. Koenig, N., Howard, A.: オープンソースのマルチロボットシミュレータGazeboの設計と利用パラダイム。
訳抜け防止モード: 、神戸、日本(2009年)Koenig、N.、Howard A. : オープンソースのマルチロボットシミュレータGazeboの設計と利用パラダイム。
In: 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE Cat. 2004年、IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) に参加。 0.73
No.04CH37566). No.04CH37566)。 0.53
pp. 2149–2154 vol.3 (2004) Roh, Y., Heo, G., Whang, S.E. pp. 2149–2154 vol.3 (2004) Roh, Y., Heo, G., Whang, S.E. 0.87
: A Survey on Data Collection for Machine Learning: a Big Data -- AI Integration Perspective. 機械学習のためのデータ収集に関する調査:ビッグデータ-ai統合の観点から 0.73
ArXiv181103402 Cs Stat. ArXiv181103402 Cs Stat 0.77
(2019) Alexey: Yolo_mark. (2019年)Alexey: Yolo_mark 0.83
Tzutalin: LabelImg. Tzutalin: LabelImg。 0.81
(2015) Sixt, L., Wild, B., Landgraf, T.: RenderGAN: Generating Realistic Labeled Data. (2015) Sixt, L., Wild, B., Landgraf, T.: RenderGAN: Generating Realistic Labeled Data 0.83
Front. Robot. フロント。 ロボット。 0.72
AI. 5, (2018). AI。 5, (2018). 0.82
https://doi.org/10.3 389/frobt.2018.00066 Pfeiffer, M., Funke, I., Robu, M.R., Bodenstedt, S., Strenger, L., Engelhardt, S., Roß, T., Clarkson, M.J., Gurusamy, K., Davidson, B.R., Maier-Hein, L., Riediger, C., Welsch, T., Weitz, J., Speidel, S.: Generating large labeled data sets for laparoscopic image processing tasks using unpaired image-to-image translation. https://doi.org/10.3 389/frobt.2018.00066 pfeiffer, m., funke, i., robu, m.r., bodenstedt, s., strenger, l., engelhardt, s., roß, t., clarkson, m.j., gurusamy, k., davidson, b.r., maier-hein, l., riediger, c., welsch, t., weitz, j., speidel, s.: creating large labeled data sets for laparoscopic image processing tasks using unpaired image-to-image translation. 0.73
ArXiv190702882 Cs Stat. ArXiv 190702882 Cs Stat 0.72
(2019) Lee, Y.-H., Chuang, C.-C., Lai, S.-H., Jhang, Z.-J. (2019年)Lee, Y.-H., Chuang, C.-C., Lai, S.-H., Jhang, Z.-J 0.80
: Automatic Generation of Photorealistic Training Data for Detection of Industrial Components. 産業成分検出のための光実性学習データの自動生成 0.61
In: 2019 IEEE International Conference on Image Processing (ICIP). 2019年IEEE International Conference on Image Processing (ICIP)に参加。 0.75
pp. 2751–2755. pp. 2751–2755. 0.78
IEEE, Taipei, Taiwan (2019) Besginow, A., Büttner, S., Röcker, C.: Making Object Detection Available to Everyone—A Hardware Prototype for Semi-automatic Synthetic Data Generation. IEEE, Taipei, Taiwan (2019) Besginow, A., Büttner, S., Röcker, C.: Making Object Detection available to Everyone— A Hardware Prototype for Semi-automatic Synthetic Data Generation。 0.96
In: Streitz, N. and Konomi, S. In: Streitz, N. and Koomi, S. 0.82
(eds.) Distributed, Ambient and Pervasive Interactions. (eds)。 分散、環境、広汎な相互作用。 0.70
pp. 178–192. pp. 178–192. 0.78
Springer International Publishing, Cham (2020) Springer International Publishing, Cham (2020) 0.85
10. Dutta, A., Verma, Y., Jawahar, C.V.: Automatic image annotation: the quirks and what works. 10. dutta, a., verma, y., jawahar, c.v.: automatic image annotation: the quirks and what works(英語) 0.81
Multimed. Tools Appl. マルチメド。 ツールappl。 0.71
77, 31991–32011 (2018). 77, 31991–32011 (2018). 0.94
https://doi.org/10.1 007/s11042018-6247-3 https://doi.org/10.1 007/s11042018-6247-3 0.25
11. Kuhner, T., Wirges, S., Lauer, M.: Automatic Generation of Training Data for Image Classification of Road Scenes. 11. Kuhner, T., Wirges, S., Lauer, M.: 道路シーンの画像分類のためのトレーニングデータの自動生成 0.85
In: 2019 IEEE Intelligent Transportation Systems Conference (ITSC). 2019年IEEE Intelligent Transportation Systems Conference (ITSC)に参加。 0.77
pp. 1097–1103. pp. 1097–1103. 0.78
IEEE, Auckland, New Zealand (2019) IEEE, Auckland, New Zealand (2019) 0.85
12. Rong, G., Shin, B.H., Tabatabaee, H., Lu, Q., Lemke, S., Možeiko, M., Boise, E., Uhm, G., Gerow, M., Mehta, S., Agafonov, E., Kim, T.H., Sterner, E., Ushiroda, K., Reyes, M., Zelenkovsky, D., Kim, S.: LGSVL Simulator: A High Fidelity Simulator for Autonomous Driving. 12. Rong, G., Shin, B.H., Tabatabaee, H., Lu, Q., Lemke, S., Možeiko, M., Boise, E., Uhm, G., Gerow, M., Mehta, S., Agafonov, E., Kim, T.H., Sterner, E., Ushiroda, K., Reyes, M., Zelenkovsky, D., Kim, S.: LGSVL Simulator: A High Fidelity Simulator for autonomous Driving。 0.87
ArXiv200503778 Cs Eess. arxiv200503778 cs eess。 0.72
(2020) 13. (2020) 13. 0.85
Redmon, J., Farhadi, A.: YOLOv3: An Incremental Improvement. Redmon, J., Farhadi, A.: YOLOv3: インクリメンタル改善。 0.82
ArXiv180402767 Cs. ArXiv180402767 C。 0.84
(2018) (2018) 0.85
14. Redmon, J.: Darknet: Open Source Neural Networks in C. (2013) 15. 14. Redmon, J.: Darknet: Open Source Neural Networks in C. (2013) 15。 0.89
Bresenham, J.E. ブレセナム j. e. 0.54
: Algorithm for computer control of a digital plotter. デジタルプロッターのコンピュータ制御アルゴリズム 0.44
IBM Syst. J. IBMシスト。 J。 0.74
4, 25– 30 (1965) 4, 25– 30 (1965) 0.90
16. Bresenham, J.: A linear, incremental algorithm for digitally plotting circles. 16. Bresenham, J.: 円をデジタルプロットするための線形インクリメンタルアルゴリズム。 0.86
Tech Rep. (1964) Tech Rep (1964) 0.71
17. Bradski, G.: The OpenCV Library. 17. Bradski, G.: OpenCV Library の略。 0.85
Dr Dobbs J. Softw. Dr. Dobbs J. Softw 0.94
Tools. (2000) 18. ツール。 (2000) 18. 0.80
Foote, T.: tf: The transform library. Foote, T.: tf: 変換ライブラリ。 0.77
In: Technologies for Practical Robot Applications in:実用的なロボット応用技術 0.85
(TePRA), 2013 IEEE International Conference on. (TePRA, 2013 IEEE International Conference on) 0.70
pp. 1–6 (2013) 19. pp. 1–6 (2013) 19. 0.88
Rossum, G. van, Talin: Introducing Abstract Base Classes. Rossum, G. van, Talin: 抽象ベースクラスの導入。 0.87
(2007) 20. (2007) 20. 0.85
Peng, S., Liu, Y., Huang, Q., Bao, H., Zhou, X.: PVNet: Pixel-wise Voting Network for Peng, S., Liu, Y., Huang, Q., Bao, H., Zhou, X.: PVNet: Pixel-wise Voting Network for 0.94
6DoF Pose Estimation. 6DoF ポース推定。 0.74
ArXiv181211788 Cs. arxiv181211788 cs。 0.73
(2018) 21. (2018) 21. 0.85
Harris, C.R., Millman, K.J., Walt, S.J. Harris, C.R., Millman, K.J., Walt, S.J. 0.80
van der, Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N.J., Kern, R., Picus, M., Hoyer, S., Kerkwijk, M.H. van der, Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N.J., Kern, R., Picus, M., Hoyer, S., Kerkwijk, M.H. 0.92
van, Brett, M., Haldane, A., R’ıo, J.F. van, Brett, M., Haldane, A., R’ıo, J.F. 0.95
del, Wiebe, M., Peterson, P., G’erardMarchant, P., Sheppard, K., Reddy, T., Weckesser, W., Abbasi, H., Gohlke, C., Oliphant, T.E. del, Wiebe, M., Peterson, P., G’erard Marchant, P., Sheppard, K., Reddy, T., Weckesser, W., Abbasi, H., Gohlke, C., Oliphant, T.E。 0.90
: Array programming with NumPy. NumPyによるアレープログラミング。 0.63
Nature. 585, 357–362 (2020). 自然。 585, 357–362 (2020). 0.82
https://doi.org/10.1 038/s41586-020-2649- 2 https://doi.org/10.1 038/s41586-020-2649- 2 0.22
22. He, K., Gkioxari, G., Dollár, P., Girshick, R.: Mask R-CNN. 22. He, K., Gkioxari, G., Dollár, P., Girshick, R.: Mask R-CNN 0.88
ArXiv170306870 Cs. ArXiv170306870 Cs。 0.85
(2018) 23. (2018) 23. 0.85
Lin, T.-Y., Maire, M., Belongie, S., Bourdev, L., Girshick, R., Hays, J., Perona, P., Ramanan, D., Zitnick, C.L., Dollár, P.: Microsoft COCO: Common Objects in Context. Lin, T.-Y., Maire, M., Belongie, S., Bourdev, L., Girshick, R., Hays, J., Perona, P., Ramanan, D., Zitnick, C.L., Dollár, P.: Microsoft COCO: Common Objects in Context 0.92
ArXiv14050312 Cs. ArXiv14050312 C。 0.82
(2015) (2015) 0.85

翻訳にはFugu-Machine Translatorを利用しています。