需要のないページ

プログラミングや趣味や。

OpenCVでイメージウィンドウを閉じられるようにする

能書き OpenCVでイメージを表示した際に、面倒な落とし穴がある。クローズボタンを押してしまうと処理がハングアップする場合があることだ。 上記回答ではプロパティを確認する方法が紹介されている。ただ、毎度似たような処理を書くのは面倒に思える。 記事…

Pythonを起動しただけでUnicodeDecodeError

能書き 表題のとおり。何の気なしに対話環境を起動したら、次のようなエラーに見舞われた。 >python Python 3.6.2 |Continuum Analytics, Inc.| (default, Jul 20 2017, 12:30:02) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits…

Androidで長押し可能なカスタムViewを作る

能書き ノリでAndroid開発を始めて二日目。それっぽい挙動をするViewを作れたので記録しておく。 コードだけコピりたい人はこちら: Holdable button sample. · GitHubなお、ド素人が書いたコードであると免責しておく。*1*2 .javaファイル public class Hol…

Python3.xで『スライドするイテレータ』を書いてみる (重複あり/なし)

能書き 次のようなイテレータが欲しくなったことはないだろうか。 >>> for e in ideal_it_A(range(6), 3): ... print(e) ... (0, 1, 2) (3, 4, 5) >>> >>> for e in ideal_it_B(range(6), 3): ... print(e) ... (0, 1, 2) (1, 2, 3) (2, 3, 4) (3, 4, 5) こ…

OpenCVの内部関数partitionをPython3.xで焼き直す

能書き OpenCVについて以前調べているとき、内部関数partitionの存在を知った。簡易なクラスタリングを行う汎用関数のようだ。 クラスタリングと多次元空間探索 ¶ cv::partition — opencv 2.2 documentation 要素の集合を同値クラス(同値類)に分割します.…

Land of Lispを読んでいたのになぜかC++のコードを書いていた

前書き 悟りを得たくて、神の言語Lispに手を付けてみた。もちろんここで紐解くのは、言わずと知れた聖典Land of Lispである。 Land of Lisp 作者: M.D. ConradBarski,Conrad Barski,川合史朗 出版社/メーカー: オライリージャパン 発売日: 2013/02/23 メディ…

Pythonのモジュールキャッシュ作成/使用条件を確認してみる

前書き Pythonをいじっているとにょきにょき発生する__pychache__。内部にはコンパイル済みモジュール.pycが格納される。 リファレンスには、次のような記述がある。 Python は2つの場合にキャッシュのチェックを行いません。ひとつは、コマンドラインから直…

クソみたいなPythonワンライナーを書いてみた

前書き あるときふと思った。クソコードを書きたい。 コードと動作 コードは次の通り。素因数を表示するものだ。一応Python3だが、print関数をprint文に置き換えればPython2でも動作する。 print((lambda f: (lambda n: f(f, [], n, 2)))(lambda f, r, n, i:…

ImportError: cannot import nameにいじめられた話

前書き ImportErrorの中で、頻出し、即座に解消出来るのはこのようなものかと思う。 >>> import hoge Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named 'hoge' おおかたモジュール名を間違えたか、階層が異なるかのい</module></stdin>…

TensorFlowのrestoreで、NotFoundErrorにいじめられた話

前書き TensorFlowで学習済みモデルを使って遊ぼうとしたときに躓いたのでメモ。 ここに学習済みパラメータと、その他情報が置いてある。 生じた問題 次のコードで問題が生じた。 import tensorflow as tf from tensorflow.contrib import slim from tensorf…

TensorFlow/models/Mask R-CNNのクラス構造と関数の引数

Pull Request #1561によるコードとコメントをまとめたもの。 Apache Licenseなので、問題はない... はず。 MaskRCNNBoxPredictor (BoxPredictor)Mask R-CNN Box Predictor. See Mask R-CNN: He, K., Gkioxari, G., Dollar, P., & Girshick, R. (2017). Mask …

SSD-TensorFlowをWindows10で試してみる

前書き そろそろ物体検出のアルゴリズムを試してみないと、と思い立った。*1 使ってみるのはSSDと呼ばれるもの。ぶっちゃけ内容は理解していない。 SlideShareにも参考になりそうなスライドがある。 SSD: Single Shot MultiBox Detector (ECCV2016) from Tak…

TensorFlowの学習済みモデルをいじってみる(1)

能書き TensorFlowの学習済みモデルで遊ぼうと思ったら、いろいろとハマった。 同じようにハマることもあるだろう、記録は残しておいた方がよい。 環境 Windows 10 64bit PyCharm 2017.1.3 Miniconda 3.6 Python 3.5 Tensorflow-gpu 1.1.0 <pip> チュートリアルの</pip>…

OpenCVのクラスの前方宣言をまとめてみる

cv::Mat cv::Point cv::Range cv::Rect cv::Scalar cv::Size cv::String 次のサイトがものすごい参考になる。 cv::Mat namespace cv { class Mat; } cv::Point namespace cv { template< typename > class Point_; typedef Point_< int > Point; } cv::Range…

Condaを使ってTensorFlowの野良ビルドを導入する

前書き 前回の記事の続きっちゃ続き。環境は、Windows10の64bit機だ。 ただし、この記事ではCPU版のインストールだけ実践する。 TensorFlowは、深層学習によく用いられるフレームワークである。 公式サイトは、次のように説明している。 TensorFlow™ is an o…

Python食わず嫌いな人間が環境を作ってみた [Miniconda + PyCharm]

前書き C++畑で育った人間として、Pythonはとても気持ち悪く思える。 動的型付けなんて黒魔術みたいだ/バイナリファイルを作りたい/etc. しかし、『使えない』のと『使わない』のとは全く違う。 最低限は試してみようと、環境を構築してみることにした。 …

定数M_PIが使えない

能書き かなり間があいたので、小ネタ。 毎度ながら、知ってる人にとっては当たり前の内容を有難そうに書く。 遭遇したエラー 例えば、次のようなコードを書いたとする。 まあ、半径から円の面積を計算するだけの、よく見るコードだ。 ただし、円周率を自前…

Qtでソケット通信を試してみた(UDP)

能書き トランスポート層のプロトコルは主に二種類ある。 確実だけどめんどくさいTCP 不確実だけど楽チンなUDP 今回はQtのQUdpSocketを用いたUDPのソケット通信を試してみた。 ネットワーク通信については詳述できないしないが、次のページが参考になる。 ま…

マルチスレッドQtアプリケーション(まとめ)

能書き Qtでマルチスレッドを実現する方法にはいくつかある。 それらの方法や参考となるページをまとめる。 『マルチスレッドとは何か?』 これについては、検索すればいくらでも情報がヒットするので、特筆しない。 個人的には、『処理の流れが複数ある状態…

マルチスレッドQtアプリケーション(2)

能書き 前回の記事の続きとして見てもよいだろうし、そうでなくてもよいだろう。 マルチスレッドをQtで再現する方法はいくつかあるが、 その中で、QThreadにタスクを委譲するものを紹介する。 簡単な例 まず、特に簡単なコードを示す。 異なるスレッド間で直…

マルチスレッドQtアプリケーション(1)

能書き マルチスレッドをQtで再現する方法はいくつかあるが、 その中で、QThreadの継承を利用するものを紹介する。 コード:特にシンプルな例 まずはシンプルな例として、次のコードを書いてみた。 ヒープ領域を解放していなかったり、プログラムの終了条件…

既存のVisual StudioプロジェクトをQt用に変換する方法:オマージュ

前書き この記事は、次のページを尋常じゃなく参考にしている。 参考というより、実行環境が違うだけだ。 同時に、先日の私の記事の解決編でもある。 環境 Windows10 Visual Studio 2015 Community Qt 5.6.0 Add-in 2.0.0 for Qt5 アドインなどが正しくイン…

Visual Studio 2015でQt GUIプログラムを組んでみる(2)

前回の続き louis-needless.hatenablog.com このページの続き。 このGUIは、QPushButtonとQLineEditを使っている。 実際にはQHBoxLayoutも利用しているが、まあ無くても問題はない。 シグナルとスロット せっかくボタンを付けたのだから、なにか応答がないと…

Visual Studio 2015でQt GUIプログラムを組んでみる(1)

能書き 前にVS上でQtが動かないという記事を書いたが、結論から言うと動いた。 適当なこと言ってすみません。 環境 Windows10 Visual Studio 2015 Community Qt Designer 5.6.0 Add-in 2.0.0 for Qt5 アドインなどが正しくインストールされている前提。 プロ…

Visual Studio2015を敢えて英語化してみる

環境 Visual Studio 2015 Community Windows10 能書き 近日Visual Studio 2017がリリースされるというのに、時期外れの投稿。 VSを日本語化する情報は多く見られるが、意外と英語化の記事は見当たらない。 なぜ英語化するかと言うと、かっこいいから情報が豊…

QLabelに画像を貼り付ける

クラスを選ぶ Qtにおいて、画像を表示できるウィジェットは、(たぶん)主に三種類ある。 QLabel QGraphicsView QPainter 単純に画像を表示するだけなら、QLabelが簡単そうだ。 画像行列自体を扱うクラスも、四種類ほどある。 QImage QPixmap QBitmap QPicture…

PickerModalLoopの前に屈服した話

QFileDialogクラスの静的メソッドに、getOpenFileNameというものがある。 これはたぶんWin32APIの同名関数のラッパであるが、 Qt Creator上で使用すると次のようなランタイムエラーがでる。 shell\comdlg32\fileopensave.cpp(14274)\comdlg32.dll!00007FFA27…

Qtのビルドディレクトリが鬱陶しい話

能書き デフォルト設定のままビルドすると、 ビルドディレクトリはプロジェクトのディレクトリと同一階層に生成される。 こんな感じ。 これは気持ち悪い。 しかも、DebugとReleaseとでディレクトリが分かれているにも関わらず、 ファイル内部はこんな感じだ…

Qtのプログラムをデバッグできない

Qt Creatorを使ってみたはいいけれど、実行はできてもデバッグできない。 『Unknown debugger type "No engine"』 いや、普通にデバッガが登録されてないって言ってよ... デバッガを入手したはよいが、それでもエラーは改善されない。 ちょっとオプションを…

Visual Studio 2015とWindows 10 SDKを両立させる

いろいろなソフトをいじってると、Windows SDKを要求される場面が多々ある。 Visual StudioにはWindows SDKが同梱されているけれど、 VS2015のSDKは、外部から参照できない形で組み込まれているようだ。 仕方ないのでSDK単体をインストールしようとすると、…

/* コードブロック */