knorth55's memo

Technical memo by @knorth55

Coral TPU ROS Node

I made Coral TPU ROS Node. Kinetic and Melodic are both supported.github.com

Raspbian + ROS + Docker

I made Raspbian Stretch + ROS docker image. ROS Kinetic and Melodic are supported. Dockerhub: hub.docker.com Github: github.com

Light Head RCNN: Chainer implementation

I made Chainer implementation of Light Head RCNN. All codes are available on Github knorth55/chainer-light-head-rcnn. arXiv Github github.com

Get matched list quickly in python

If you do not consider the list order, it is better to use set and & operator. a = [1, 2, 3] b = [2, 3, 4] c = sorted(list(set(a) & set(b))) stackoverflow.com

Specify GPU devices on ChainerMN

Use CUDA_VISIBLE_DEVICES environment variable as below. CUDA_VISIBLE_DEVICES=0,2,3 mpiexec -n 3 python train.py https://devtalk.nvidia.com/default/topic/509221/specifying-gpu-device-using-openmpi-mpirun/

FCIS: chainer implementation

I implemented Fully Convolutional Instance-aware Segmentation (FCIS) by Chainer. All codes including training scripts is on Github. I also made a explanation slide of FCIS on SlideShare. ArXiv Github SlideShare github.com

ThinkPad T450 cannot detect wifi adaptors

My T450 suddenly could not find wireless devices with lcpci. $ uname -r 4.2.0-42-generic $ lspci -nn | grep -i net 00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection (3) I218-V [8086:15a3] (rev 03) I upgrade BIOS ver…

Python2.7でUnicode文字をjoin

Python2.7でUnicode文字をjoinすると不思議なことになる >>> a = u'\U0001f607' >>> a u'\U0001f607' >>> print(a) >>> a = a.join(u'\U0001f607') >>> a u'\ud83d\U0001f607\ude07' >>> print(a) ??????Unicode文字をつなげる際は >>> a = u'\U0001f607' >…

OSXのTerminalが起動はするがすぐ落ちる

OSXのTerminalを起動すると、起動はするがすぐに落ちて消えてしまう 一旦デフォルトのログインシェルに戻した上でbashを実行すると以下のエラーが返ってきた。 dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib Referenced from:…

C++でuint8配列に32FC1などのfloat配列を格納する

Depth Imageは32FC1などのfloat型(32bit, 4byte)の配列である場合があります。 しかしROSのsensor_msgs/Imageのdataはuint8_t型(8bit, 1byte)の配列であり直接追加することはできません。ここでやるべきことはfloat型を4つのuin8_tに分割する変換です。 …

PyGraphvizのインストールで "No package 'libcgraph' found" (OS X)

pipでpygraphvizを入れようとすると下記のようなエラーが出た。 $ sudo pip install pygraphviz Collecting pygraphviz Downloading pygraphviz-1.3.1.tar.gz (103kB) 100% |████████████████████████████████| 112kB 4.8MB/s Installing collected packages…

rosjava + gradleでROSプログラムをscalaで書く

rosjava + gradle でscalaプログラムを書きました。 ROSのパッケージとしてgithubにあげているのでよければどうぞ。 基本的にはcatkin_create_rosjava_pkgとcatkin_create_rosjava_projectによって生成された設定ファイルを変更しているだけです。 rosjavaを…

scalaでインクリメント

scalaでインクリメントを行う際に++は使えないそうです。 javaと同じように書いて初めて気づきました。 a: Int = 0 a += 1 // a= 1

Pythonの引数が参照渡しである影響

Python 2.7でちょっとつまってしまったので検証してみたら、関数の引数は以下のような例で変更されるらしい。 Pythonは参照渡しなので可変オブジェクトであるリストに関してはこういった破壊的(?)な処理が行われます。参考サイト Pythonの引数は全て参照…

ROSの日本語入門書

最近知ったのですがROSの日本語ドキュメント(入門書?)がフリー公開されていました。 感激です。 詳説 ROSロボットプログラミング

Ubuntuがフリーズした際に再起動するためのMagicSysReq Key

Ubuntuがフリーズしてしまった時には「Alt + SysReq + Command Key」を正しく入力することで安全に再起動できる。 SysReqキーはない場合はPrtScキーで代用のようです。 Command Keyは「REISUB」の順に押していく。(REIでプロセスを強制終了できる場合もある…

ARdroneのシミュレーター(tum_simulator)のインストール方法(Ubuntu14.04LTS)

ARdroneのシミュレーターことtum_simulatorをUbuntu14.04LTS + ROS Indigoで動かします。(2015/10/24訂正) 1. ardrone_autonomyのインストール ・Debianパッケージの場合 sudo apt-get install ros-indigo-ardrone-autonomy (Indigo以外もあるそうです) …

OS X上でWindowsブータブルUSBが作れない?

USBにシステム修復ディスクを作るためにisoファイルを落としましたがWindowsのブータブルUSBをOS X上では作れませんでした。 OS X上でやるにはBootCampでWindowsを動かさないとダメみたいです。 ちなみにLinux上では作るアプリがあります。

bootrec /RebuildBcdで"required system cannot be found"とでるエラー

突然ですがうちのWindows7が起動しなくなりました。 なのでUSBで作ったシステム修復ディスクでシステム修復を行ったのですが、bootmgrが悪いというのは検出してくれるのですがstartup optionsが変更できないと言われました…… スタートアップ修復はもちろんで…

IPアドレスがDNSBLに登録されているかをdigで確認する

digコマンドを使ってIPアドレスがDNSBLにリストアップされているかを確認します。 DNSBLとはDNS-Based Blackhole Listのことで、スパムを送ってくるサーバをリストアップしています。 dig [domain].dnsbl_server_name この際にdomainはIPアドレスの後ろから…

ブログを始めました

ブログを初めてみました。 自分の動機付けかつ備忘録のような使い方をしますのでよろしくお願いします。