aptpod Tech Blog

株式会社アプトポッドのテクノロジーブログです

RustでROS(RoboMaker)のノードを書いてみる

f:id:aptpod_tech-writer:20200421192521j:plain

先端技術調査グループの大久保です。

弊社では現在、クラウド上でROSの開発が行えるAWS RoboMakerを利用しており、GazeboシミュレーションもRoboMakerを使って行っています。当ブログでも、RoboMakerを使ったシミュレーションを以前取り上げています。

tech.aptpod.co.jp

現在は、シミュレーション上のロボットにdepthカメラを取り付け、depth情報を収集できるようにしています。

このdepth情報ですが、32bit浮動小数点数のバイナリ列のため、そのままでは可視化して確認することができません。ROS用のツールを使って可視化することはできますが、弊社のVisual M2Mなら、ROSトピックとして流れる画像をネットワーク越しに確認することができるため、これを利用します。その時必要になるのは、depth情報のROSトピックをjpegに変換して、それを別のROSトピックに流すノードとなります。

ROSのノードを記述するためにはC++かPythonを使うのが一般的ですが、Rustでも記述することができます。そこで今回は、Rustを使ってノードを書いてみます。

続きを読む

リモートワークにおける弊社の取り組み事例紹介

f:id:aptpod-tetsu:20200417145022j:plain

はじめに

はじめまして、人事の神前(こうさき)です。

4月1日に入社をして早々に本ブログ記事の執筆をすることとなり戦慄したのですが宜しくお願いします。

改めてにはなりますが、去る4月7日(火)に緊急事態宣言が出されました。

緊急事態宣言以前からリモートワークへ切り替えていた企業も多いとは思いますが、これを機に一気に加速したように感じます。

私個人の話でいうと、前職では某ゲーム会社に在籍してまして、優先順位的に開発側ではリモートワークの準備や実施がされていたのですが、管理部門でのリモートワーク実施前に退職したこともあり弊社に入社をしてから本格的なリモートワークとなりました(前職のノリで入社初日にフィギュアを持ち込んでデスクに飾ってたら「なんかやべーやつが入社してきたぞ」と若干社内がざわついたことはここだけの秘密)

弊社でも2月中頃からリモートワークへの切り替えを推進してまして、現在ではほぼ100%の社員がリモートワークに移行し、(物理的にどうしても出社しないといけないとしても)出社日も限定して日々業務をすすめています。

さて、そんな状況下ですと日々知見だったり問題だったりがたまっていきます。

そこで今回はネット上にある他社さんのリモートワーク事例やTIPSのご紹介と弊社での取り組み事例をご紹介できればと思います。

本記事がみなさんのリモートワークの一助になれば幸いです。

続きを読む

OpenH264とDockerを用いて動画解析環境を構築する

f:id:aptpod_tech-writer:20200407192117j:plain

先端技術調査グループの南波です。ウイルスは大変な状況ですが、原則自宅勤務となったことで息子2人のお昼寝を眺められる時間が増え、すこしほっこりもしています☺️

さて、今回は最近のお仕事の中で

  • intdashのサーバーに蓄積されているH.264の動画データを解析したい
  • H.264のライセンスはもちろんクリーンに対処したい
  • プロダクト投入時には Amazon ECSなども利用してスケールさせたいので、解析環境はDocker上に用意したい

といった課題に対しOpenH264をDocker上で利用する方法を調査・検証したので、その内容の共有です。

続きを読む

360°動画Player開発の実用TIPS集

f:id:aptpod_tech-writer:20200326151654j:plain Webチームの蔵下です。弊社で開発しているintdashには、Media Servicesという動画や音声などのメディアデータを扱うサービスがあります。さまざまなカメラに対応できることもあり、RICOH THETAのような360°カメラで撮影した動画を扱うこともあります。

f:id:aptpod_tech-writer:20200323143043p:plain

全天球画像 | RICOH THETA」より引用

▲360°動画。360°の映像が1つのパノラマ動画内に収められています。歪みを補正して再生するためには、専用の動画Playerが必要になります。

この360°動画をブラウザで再生する360°動画Playerを、JavaScriptの3Dフレームワークであるthree.jsで開発しました。

本記事では、360°動画Playerを開発するときの実用的なTIPSを紹介します。

  • 360°動画Playerの仕組み
  • 実用TIPS集
    • TIPS1: three.jsのRenderingとVideo描画でLoop処理を分離する
    • TIPS2: Playerの外からPitch, Yaw, Zoomを操作できるようにする
    • TIPS3: 動作テストはStorybookで実装する
  • おわりに
続きを読む

アプトポッドの過去と現在、そして未来について

f:id:aptpod_tech-writer:20200227193625j:plain

はじめに

はじめまして。VPoPの岩田です。

弊社は、昨年の8月より開発本部のマネジメント体制を強化し、CTO・VPoE・VPoP から構成される CTO 室体制を敷いております。 aptpod Advent Calendar 2019 では、VPoE 高橋より こんなエモくて素敵な記事 が投稿され、 CTO 梶田からは 1年を総括する記事 が投稿されており、 私も彼らの後に続くべく、遅ればせながら本記事を投稿することにいたしました。

今回の私の記事の題材はというと、ずばり 「アプトポッドってなにをしている会社なの?」 です。

私自身アプトポッドに転職をしてきてから はや3年が経ちますが、実を言うと、今だに身内や友人から「お前の会社はなにをしている会社なんだ?」と聞かれることがよくあります。 それもそのはず、アプトポッドの技術領域は、 ハードウェアの自社企画・開発 から、クラウド環境をフル活用したサーバーアプリ・Webアプリの開発 まで、多岐に渡ります。製品の形態としても、SaaSやPaaS、ミドルウェア製品までラインナップしていますので、一言で なにをしている会社か と説明することは容易なことではありません。

そこで本記事では、アプトポッドに少しでも興味を持ってくださった皆様に、「なるほどアプトポッドとはこんな会社なんだな」と納得していただけるよう、 アプトポッドのこれまで、現在、そしてこれからについて、解説をこころみたいと思います。 (あわよくば、私のように会社説明に難儀している自社社員に、説明の手助けになるような記事にできれば一石二鳥です)

少々長い記事になるかとは思いますが、最後までお付き合いいただけますと幸いです。

続きを読む