2019-01-01から1年間の記事一覧
試した環境 Windows10 本題 Direct3D 11 のシェーダーで定数を扱う際に用意する Constant Buffer ですが、 このバッファサイズは16の倍数にしなければなりません。 このことは D3D11_BUFFER_DESC 構造体のリファレンスページに載っています。 D3D11_BUFFER_D…
試した環境 Windows 10 Git 2.24.0.2 の Git Bash 本題 ファイル分割する際、ファイル名のつけ方で色々な要望があると思います。 私がファイル名のつけ方でやりたかったことが bash のsplitコマンドのオプションに用意されておりました。 その機能を紹介しま…
はじめに 去年もやりましたが、来年の1月のセンター試験に向けて勉強しようと思います。 そこで現在の学力を測るため今年の問題を解きました。 平成31年度センター試験本試は今年の1月に解きましたので、今回は追試を解きました。 問題は以下のページから取…
確認した環境 OpenCV4.1.1 Windows10 Visual Studio Community 2019 Version 16.3.7 はじめに OpenCV には汎用的な幾何変換を行う cv::remap 関数があります。 この関数では変換情報を表す cv::Mat 型のマップ情報を使用します。 マップ情報は大きく分けて浮…
確認した環境 Windows10 Visual Studio Community 2019 Version 16.2.5 本題 前回の記事で std::thread にメンバー関数を渡すときについて書きましたが、 純粋仮想関数の場合を確認していなかったので今回確認します。 コードは以下の通りです。 class BaseC…
確認した環境 Windows10 Visual Studio Community 2019 Version 16.2.5 本題 std::thread の1番目の引数にクラスのメンバ関数を渡すとき、 そのメンバ関数が static かそうでないかで書き方が異なります。 static でないメンバ関数では2番目の引数に this を…
確認した環境 Windows10 Visual Studio Community 2019 Version 16.2.5 本題 C++ のムーブコンストラクタはデフォルトが用意されていますが、 int などの基本型がどのようになるのかを実際に動かして確認しました。 ムーブコンストラクタがちゃんと呼ばれて…
はじめに 前回の記事を書いた後で、force_key_frames を設定する方法を知ったので、それについて書きます。 ちなみに、前回の記事はこちらです。 確認した環境 ffmpeg 4.2 本題 force_key_framesによるキーフレームの設定では式(expression)を使って詳細に指…
確認した環境 ffmpeg 4.2 本題 H.264形式の動画を生成するときにキーフレームの間隔を指定したいときがあるかもしれません。 (例えばストリーミング再生用に変換する際に、セグメントの秒数を指定したいときなど) その場合、以下のようにx264-paramsのkeyi…
確認した環境 Windows10 Visual Studio Community 2015 Update 3 CPU Intel(R) Core(TM) i7-4790 コア数4、論理プロセッサ数8 使用するスレッド数を指定する2つの方法 forループ内の処理を並列で処理したい場合、 OpenMP が有効になっていれば#pragma omp pa…
環境 Windows10 バージョン1903 本題 Windows10 をバージョン1903にアップデートした後で Snipping Tool (画面キャプチャアプリ)を起動したところの以下ように表示されたのに気づきました。(この表示は以前のバージョンからあったみたいです) Snipping T…
はじめに プログラムを並列実行したいとき、コマンドプロンプトではstartコマンドがあります。 しかしstartで実行した処理の終了を捕捉するのは簡単にはできないと思います。 (私が知らないだけかもしれませんが。) そうなると、並列実行した時のすべての…
はじめに この記事では、最大値255のPGM バイナリ(PNM P5)形式の画像を cv::Matに読み込むコードを載せております。 しかし OpenCV はcv::imreadで上記の形式に限らず PNM 形式を読み込めますので、 本来このような処理を自分で書く必要はありません。 所謂…
気になったので Wandbox で調べました。 int main() { int32_t s = -1; uint32_t u = static_cast<uint32_t>(s); std::cout << u << std::endl; // 4294967295 } int main() { int32_t s = -2; uint32_t u = static_cast<uint32_t>(s); std::cout << u << std::endl; // 42949672</uint32_t></uint32_t>…
はじめに この記事では const cv::Mat を書き換える方法を示しますが、 const cv::Mat の書き換えを推奨する意図はございません。 cv::Mat に限らず const が付いた変数は基本的に書き換えるべきでは無いと思っています。 この記事は OpenCV に慣れていない…
アクセス数と投稿数について 1年間ブログを続けたらどのくらいのアクセスになるのか気になる人もいるかもしれない。 少なくともブログを始める前の私は興味があったので記す。 2019/06/02時点で以下の通りだった。 アクセス(合計) 1100 投稿数 42 はてなブ…
環境 Microsoft Visual C++ 2015 Draco 1.3.5 本題 Draco の status.h には、ERRORという列挙子が定義されています。 一方、windows.h 内で include している wingdi.h には、以下のようにERRORが define されています。 #define ERROR 0 そのため、 status.…
twitter.com どの程度使用するか分かりませんが、Twitter アカウントを作成しました。 よろしくお願いいたします。
reinterpret_cast はポインタの型変換を行うという説明をよく目にします。 しかし、それだけではなく参照のキャストも行えるということをメモしておきます。 コード #include <iostream> struct Point { int x; int y; }; struct Size { int width; int height; int ar</iostream>…
環境 Git v2.21.0 本題 やりたいことが言葉で伝わりにくいので、図にしました。 上図のように、ブランチBの先頭ではないコミットをブランチAにマージしたい場合、 以下のようにします。 git chekout A git merge --no-ff <コミットのハッシュ> <コミットのハ…
環境 Windows 10 vcpkg 2018.11.23-nohash 本題 Vulkan プログラミングの環境を構築しようと構築手順を説明している記事を読んでいると、 Vulkan SDK を以下のページからダウンロードしてインストールするように書いてあります。 https://vulkan.lunarg.com/…
はじめに 英語のトレーニングとしてシャドーイングは有名ですが、 私が初めてシャドーイングを実践した時は全くできませんでした。 その時の印象が以下の通りです。 聞いたそばから抜けてしまう 自分の発した声で音声が混ざって聞き取れない これらの点から…
環境 Windows 10 Microsoft Visual Studio Community 2015 Update 3 vcpkg 2018.11.23-nohash 現象 私の環境では、vcpkg によるzlib のビルドが上手くいきませんでした。 コンソールの出力は以下のものでした。 $ vcpkg install zlib:x64-windows The follow…
はじめに、以前書いた記事を引用します。 一方、Pillow のbilevel におけるconvert の説明によると、 If dither is NONE, all values larger than 128 are set to 255 (white), all other values to 0 (black). とあるので、128の値を持つピクセルは0になる…
以下のような連番ファイルが1つのディレクトリ内に存在すると想定します。 00_0000.jpg ... 00_0089.jpg 01_0000.jpg ... 01_0089.jpg : 29_0000.jpg ... 29_0089.jpg 上記の2700ファイルような2つの連番がついたファイルをここでは2次元の連番ファイルと呼…
Pillow でOpenCV の膨張処理とを同じ処理がしたかったので、 その方法と処理結果が等しくなるか確認しました。 環境 python 3.5.6 opencv 3.4.2 pillow 5.2.0 コード全体 先に今回書いたコードを載せます。 # -*- coding: utf-8 -*- import cv2 import numpy…
漢文の勉強で大いに役立ったのが、高校時代に使用していた国語便覧でした。 国語便覧には漢文の基本的な読み方や主要な句法が載っており、 ここに載っている基礎知識だけでもセンターの漢文は十分カバーできました。 古文についても文語文法や重要古語など基…
昨日実施されたセンター試験1日目の問題を解きました。 ちなみに2か月前に平成30年度の試験問題に挑んだ時の記事はこちらです。 kakashibata.hatenablog.jp 問題 問題は朝日新聞デジタルで公開されていたものを使用しました。 www.asahi.com 結果 解いたのは…