画像処理

2次元点-3次元点の対応付けからカメラパラメータを導出する

SfMやSLAMでは、2次元点と3次元点の対応付けから、カメラパラメータ(透視投影変換行列)を求める必要があります。今回は、DLT (Direct Linear Transformation)を使った透視投影変換行列の導出法について書いてみ...
ブラウザ拡張

【Chrome拡張開発】ポップアップに表示したリンクが開けない場合の対処

前回、Chrome拡張機能のポップアップの表示について書きました。このポップアップにhrefでリンクを追加したのですが、リンクをうまく開けなかったので、その対応メモです。 やりたいこと ポップアップにリンクを追加して、リンククリック時に新し...
ブラウザ拡張

【Chrome拡張開発】拡張機能アイコンのクリック時にポップアップを表示する

最近Chrome拡張を開発してみてるので、その開発メモです。基本的にはGoogleの公式リファレンスを参考にしてます。 やりたいこと こんな感じで、Chromeのツールバーにある拡張機能のアイコンをクリックしたら、設定画面的なものを表示させ...
プログラミング

Pythonのopenで改行コードが変わった話 in Windows

Pythonでちょっとしたスクリプトを書いていたのですが、どうにも入力ファイルと出力ファイルの改行コードが変わってしまってちょっとはまったので、対応メモです。 環境はWindows 10 + Python3.5になります。 そもそも改行コー...
プログラミング

【JQuery】Uncaught TypeError: xxx.find is not a function at yyyy.jsの原因と解決法

フロントエンド開発に慣れてなくて、JQueryの初歩的な部分ではまったのでメモです。 エラー エラーを吐いたコードはこれです。 let elements = $('.g'); for(let i = 0; i < elements.leng...
開発環境

Hyperのデフォルトショートカットキー(Windows)

WindowsのターミナルソフトはHyperを使ってます。なかなかいい感じの使い勝手なのですが、まだ慣れてなくてショートカットキーを頻繁に忘れるので、ショートカットキーをメモしておきます。 ショートカットキー一覧 デフォルトショートカットキ...
サーバ運用

Vegetaを使ったサーバの負荷テスト

仕事でサーバの負荷テストをすることになったので、Vegetaという負荷ツールを使ってみようと思いました。githubの画像がとても素敵ですね。 Vegetaのインストール まずはVegetaをインストールします。インストールにはGo言語の開...
Web開発

Create React Appで作成したアプリを任意のサブディレクトリに配置する

Create React Appで作成したサービスをサーバのサブディレクトリ直下に配置したら上手く動かなかったので、その対応メモです。 現象 Create React Appを使ってみました。 それで、ローカルでは動作確認できたものの、作成...
Web開発

Create React Appを使ったサービス開発

最近いい加減フロントエンド開発の知識もないとまずいなと思い始めたので、Reactを触ってみることにしました。どうにもCreate React Appというツールを使うと簡単にReactを使ったサービスを作り始めることができるみたいなので、今...
開発環境

Hyper + WSLでWindows上に快適なターミナル環境の構築

以前Windows上で快適なターミナル環境を整えるため、cmderを導入しましたが、不満が出てきたので、Hyperというターミナルを試してみましたので、その環境構築メモです。 Hyperのインストール まずはこちらからHyperをダウンロー...
linux

Linuxで改行コードを確認/変更する

同僚からもらったテキストファイルの改行コードがWindowsの\r\nだったせいで、解析用のシェルスクリプトが上手く回らなかったので、改行コードの確認と変更方法のメモです。 OS毎の改行コード WindowsとLinux、OS Xの改行コー...
Web開発

Nginx + GolangでWebアプリケーション開発 ~http編~

NginxとGo言語でWebアプリケーションの開発環境を整えたので、構築メモです。 環境はVirtualBox上で動いているCentOS 7になります。Nginxでアクセスを受けて、httpでGoに渡してGoで処理をさせたいと思います。 F...
Web開発

Nginx + GolangでWebアプリケーション開発 ~FastCGI編~

NginxとGo言語でWebアプリケーションの開発環境を整えたので、構築メモです。 環境はVirtualBox上で動いているCentOS 7になります。Fast CGIを使ってアクセスをNginxで受け取ってGoで処理をさせたいと思います。...
linux

Linux(CentOS, Ubuntu)にGo言語の開発環境を構築する

Go言語の開発環境を整えたので、その時のメモです。基本的には公式サイトのGetting Startedに沿って環境を構築しました。 CentOS 7とUbuntu 18.04 LTSの2つのLinuxに開発環境を構築しましたが、同じ手順で構...
開発環境

Gitで秘密鍵を指定してリモートリポジトリを操作する

githubとbitbucketを併用している場合などは、~/.ssh/configにドメインごとにどの鍵を使用するか指定するのが一般的だと思います。しかし、githubをマルチアカウントで運用するような場合は、ドメインが同じなのでこの方法...
linux

CentOSにnginxを導入する

勉強がてらCentOS 7.5にnginxを導入したのでそのメモです。 nginxをインストール 各種ディストリビューションへの導入方法は(英語ですが)公式サイトに書いてあるので、それに従ってnginxを導入します。 nginxのリポジトリ...
linux

Linuxのデフォルトshellをzshに変更する

基本的にbashよりzsh派なのですが、毎回デフォルトのshellを変更する方法を忘れるので設定方法を記録に残しておきます。 今回は、CentOS 7.5を使用します。 zshがインストール済みか確認 まずはzshがインストール済みかどうか...
開発環境

VirtualBoxのホストキーを変更する

家ではErgodoxというキーボードを使用しているのですが、VirtualBoxのデフォルトホストキーである右Ctrlキーが存在しなくてハマったので、ホストキーの変更方法のメモです。環境は以下です。 Windows 10 VirtualBo...
プログラミング

OpenCVのcv::viz::writeCloudがis_block_type_valid(header->_block_use)とか_CrtlsValidHeapPointer(block)で落ちる

Visual Studio 2017でC++を書いて実行したら何やらエラーで落ちてしまいました。どうにもOpenCVの関数であるcv::viz::writeCloudを呼び出したときに落ちてるらしいことはわかったものの、解決するまでちょっと...
プログラミング

【OpenCV 3.4】SIFTを使おうとするとError: The function/feature is not implementedと出力された

今までOpenCV 3.4.0を使用していたのですが、最近OpenCV 3.4.3にバージョンアップしました。バージョンアップ後にSIFTを使おうとするとちょっとハマったのでメモです。 現象 SIFTを使いたかったので、OpenCVのope...