極楽とんぼのロボット製作記

情報工学系大学院生がロボットとその周辺技術や身の回りの出来事について紹介するブログ

最強のJupyterNotebook環境(vim-bind)を構築する

この記事で行うこと 「jupyter-vim-binding」を使って、jupyter notebookにvim-bindのキー設定をする 「xkeysnail」を使ってctrl+nなどのvim-bindで操作した際に邪魔になるブラウザのデフォルトのショートカットキーを別の設定に割り当てる jupyter notebook…

PythonからGoogle Cloud Vision APIを使ってみた。

GoogleのCloud Vision API使ってみましたが思ったよりも良い精度でした。Pythonを使ったrequestの方法と出力結果のjsonデータを見るためのjson viewerを紹介します。 Google Cloud Vision API の使い方 API keyの取得 API にrequestするプログラム おすすめj…

seleniumで始めるウェブスクレイピング(Steamで遊ぶ)

Seleniumでウェブスクレイピングをする方向けの記事です。 この記事で分かること 環境構築 seleniumのインストール WebDriverのダウンロード Steamをウェブスクレイピングしてみよう! Steamで検索する 要素を見つける XPATHで要素を指定する 売上上位のゲー…

目指せ機械学習マスター[#01](機械学習の事始め:『人工知能は人間を超えるか』)

tani_AI_Academyさんの記事に影響を受けて、自分も機械学習の勉強をはじめました。機械学習の分野は多岐にわたっていて、初心者の私は何から手をつけて良いか分かりませんでした。 qiita.com 上の記事では機械学習をマスターするまでの道のりが示されていま…

cronを使って自動でスクリーンショットを撮る

Ubuntu上で一定時間ごとにスクリーンショットを撮る必要に迫られ、試行錯誤した結果を載せます。 shutterのインストールと使い方 スクリーンショットを撮るツールとしてはgnome-screenshotやscrotなどがありますが、今回はファイル名の指定やウィンドウの指…

【ROS】OpenCV2に依存に依存しているパッケージの利用

ROSのとあるパッケージを試しに動かしてみようとしたときに出会ったOpenCV関連のエラーです。 ちなみに動かそうとしたパッケージはこれです。 github.com エラー内容 パッケージをビルドすると以下のようなエラーが出ます。 (find_package): Could not find …

【Ubuntu】ジョイスティック(PS3コントローラ)がマウスとして認識されてしまう問題

ロボットを動かそうとしてPS3コントローラをPCに接続したところ、コントローラのジョイスティックがマウスとして認識され、ジョイスティックを動かす度にポインタが移動してしまう現象が発生しました。対処策は以下の通りです。 xserver-xorg-input-joystick…

IRKitで指定時間に照明をつけて目覚ましにする

最近、学校へ行く道すがら梅が咲いているのを見て、「ああ、そろそろ春だなあ」などと呑気考えています。やっと寒い冬が明けて楽ができて良いのですが、ついつい寝すぎてしまって困るのがこの時期です。昔の人も「春眠暁を覚えず」とか言ったそうですね。 そ…

複数のターミナルを同時に起動・分割ができるターミナルマルチプレクサ「tmux」を使ってみる

tmuxとは?、tmuxの基本操作、便利なキーバインドの設定、プラグインに関する設定などをまとめました。tmuxを使うことでターミナルの分割やセッションの保存ができ、作業効率があがります。これを読めばtmuxを一通り使えるようになるように書いたつもりです。…

vimのタブ(セッション)を保存する「vim-session」

Vim

作業を開始するたびに複数のタブを開き直すのは大変ですよね。そんなあなたにvim-sessionをおすすめします。閉じた際のタブの状態(セッション)を保存して、もう1度開くときにそのセッションを読み込んで表示してくれます。 参考サイト qiita.com以下に、dein…

【ROS】The manifest (with format version 2) must not contain the following tags: run_depend

ROSで自分で作ったメッセージをコンパイルしようとした際に出たエラーです。 エラー全文 Error(s) in /home/username/catkin_ws/src/segment_point_cloud/package.xml: The manifest (with format version 2) must not contain the following tags: run_depe…

【C++】(.text+0x20): `main' に対する定義されていない参照です

「くそ、こんなことで! 」と数十分を無駄にした自分に対する怒りの発散と戒めを込めてエラーと対処方法を書きました。C++を学び始めた方の手助けになればと思います。 環境は OS: Ubuntu 16.04 コンパイラ: gcc (Ubuntu 5.4.0-6ubuntu1~16.04.5) 5.4.0 2016…

新しいVim、"Neovim"を導入する

Vim

Neovimのインストール vimやviでnvimを起動するようにする .vimrcの引っ越し プラグインを管理する dein.vimのダウンロード方法 dein.tomlの書き方 dein.tomlをダウンロードし、読み込むinit.vimの書き方 Neovim導入の仕方を説明します。 Neovimのインストー…

【ROS】rvizでMessage removed because it is too old (frame=[/hoge]と表示される

ROSのrvizを使用中にMessage removed because it is too old (frame=[/hoge]というErrorが表示される場合の対処法です。多くの場合、このエラーはrosbag playを使用してbagファイルを再生しながらrvizを使用した時に発生します。ROSは基本的に現在時刻を使っ…

No connection to TeamViewer server

TeamViewer起動時に No connection to TeamViewer server Please check your internet connection Most likely you use a proxy server and you have to enter the proper information in the options dialog と表示されてログインできない場合の対処法です…

Ubuntu16.04をWindows10とデュアルブート in UEFI

Windows10でUEFIブート環境を使っていて、GPUも搭載しているPCにUbuntuをデュアルブートする際の手順をまとめました。Try Ubuntu, Install Ubuntu後に画面が真っ暗になってしまう問題を解決、その他、Windows10の高速スタートアップの無効化、UEFIBootのFast…

【ROS】catkin_wsをgitで管理する

自分で作成したcatkin_wsをgitで管理する方法を紹介します。 リポジトリ作成 やり方は簡単です。まずはGithubやBitbucketでリポジトリを作成しましょう。 今回はmy_rosとしておきます。 $ git clone https://github.com/username/my_ros.git ワークスペース…

【git】addできずにfatal: Pathspec '/hoge/piyo' is in submodule '/hoge'と表示される

gitでaddしようとした際に、 fatal: Pathspec '/hoge/piyo' is in submodule '/hoge' と表示されて、addできなかった際の対処方法をまとめておきます。まずは落ち着いてstatusを確認してみましょう。 $ git status ..... /hoge .....(submodule untracked co…

【ROS】一斉にnodeを起動するLaunchの書き方

ROS

launchファイルを使って複数ノードを起動する方法をまとめました。パラメータ、引数の設定や、トピック名を変更する方法、名前空間の設定などを解説します。またlaunchファイル使用時にROS_INFOや標準出力を表示する方法も示します。

GitHubのリポジトリ名変更

Git

GitHubのリポジトリ名を変更する手順です。 Web上での操作 GitHubの対象リポジトリのSettingタブからRepository Nameに新しい名前を入れてRenameを選択します。 対象リポジトリ上での操作 下記のコマンドを対象のリポジトリ上で実行して、リモートリポジトリ…

スマホで家電を操作する IRKitを試してみた

家電をスマホから操作できるIRKitを購入しました。出先から家電を操作できます。IRKitの使い方、ボタン登録際の注意、おすすめの設置場所などを紹介しています。

Githubでdotfilesを管理して、環境構築を一瞬で終わらせる

Git

dotfilesを管理して面倒な環境構築をコマンドで行います。シェルスクリプトを使用してシンボリックリンクを生成したり、必要なパッケージをインストールしたりします。

GithubにSSHで接続し、リポジトリを作成する

GithubにSSHで接続してリポジトリを作成します。SSHkeyの作成、Githubへのssh鍵の登録、SSHを使用したGithubへのpushを行います。

Raspberry Piバージョン確認方法まとめ

Raspberry Piのバージョン確認方法をまとめました。

Raspberry Pi 初期設定

Raspberry Piの初期設定をまとめました。パスワード、ホスト名、言語、ロケーション、SSH、日本語化の設定方法を解説しています。

「画面のオーバーレイを検出」AndroidをMarshmallow(6.0)にしたらひどい目にあった件

方法1:画面オーバーレイしているアプリを1つずつ終了させる 方法2:設定の許可から直接権限を変更する ユーザが求めているのはオーバーレイしているアプリの設定を変更することじゃない、使いたいアプリの設定を変更することなんだ! Marshmallowとの別れ 方…

Raspberry Pi ZeroにRaspbianをインストールする

Raspberry Pi ZeroにRaspbianをインストールする手順を説明します。 NOOBSのダウンロード(時間の目安:30分) SDカードフォーマッター(時間の目安: 5分) NOOBSをSDカードにコピー(時間の目安: 3分) Raspberry Pi Zeroの起動準備(時間の目安:10分) NOOBSを使っ…

Raspberry Pi Zeroに必要な物リスト

全体の構成 本体 周辺機器 MicroSDカード USBハブ USB(microB to A)変換ケーブル マウス&キーボード ディスプレイ&miniHDMI to HDMI (&HDMI to VGA) 無線LAN子機(Raspberry Pi Zero Wは不要) FRISK ついにRaspberry Pi Zero Wの技適が通り、本日07/18(火)か…

Processingエラーまとめ

自分がProcessingでコーディング中に遭遇したエラーと解決策をまとめました。 きっとこんなエラー初歩的過ぎて誰も記事にしないと思いますが、私のような迷える子羊のために書きました。 Processingバージョン: 3.3 NullPointerException hoge cannot be res…

JavaのLinkedListやArrayListを使用中「ConcurrentModificationException」というエラーが出る

ProcessingにてLinkedListを使用した際に出くわしたエラーです。 エラーが出た状況 まずはソースコードをお見せします。 import java.util.LinkedList; class Hoge { int state; Hoge(){ state = 0; } int is_state(){ return state; } } int hogeNum = 5; L…