C++_assert とは

C++/CLI でも C#++ でも使えるもよう。assert:主張する。 assert は、その関数を呼び出すユーザに対して要件を表明できる。 ex )「関数の引数がある範囲内の値でなければならない」→ assert ( 10 < a < 100 ) 「ある状態でこの関数を呼び出してはならない」…

C++_参照型とポインタ

ごちゃになってきたので再度調べ。 ポインタ アドレスを記憶する変数。アドレスを直接扱う。 参照型 C++ で使われる。ポインタ型よりも制約が強く安全に使える。裏ではポインタの受け渡し。 ・参照型の使い方 // 普通のdouble 型 double a; // x は a を参照…

C++_アンパサンドの意味

& ( アンパサンド ) には 2 つの意味がある! &変数 → アドレス演算子型名& → 参照型を示す宣言子 ポインタでの & ( アドレス演算子 ) メモリアドレスを得る演算子。ポインタとセット。参照型で利用するものとは全く別。 int hoge = 10; int* fuga = &hoge …

C++/CLI の基礎

いろいろメモ。デリゲート調べてたら分からなくなった。 C++/CLI とは CLI 向けに C++ を拡張したプログラム言語。 CLI :Common Language Infrastructure共通言語基盤。 CLR :Common Language Runtime共通言語ランタイム。CLI 仕様の .Net Framework アプ…

光学機器_アフィン変換とは

画像の拡大縮小・回転・平行移動などをまとめて 3 × 3 の行列を使って変換すること。 変換前の座標を ( x , y )変換後の座標を ( x' , y' )とすると、行列で表わすと以下のようになる。 実質的には 2 行 3 列の行列を使って変換する。( 0 を考えないと 2 × 3…

C++_ std::setprecision と std::fixed ( 桁数指定 )

桁数指定の時に使用するが、分からないまま使用しているので調べた。ほぼコペ。 ※ #include <iomanip> が必要。 std::setprecision 浮動小数点数を出力する精度を設定するマニピュレータ。 マニピュレータ:ストリームに対して、何らかの操作を行うオブジェクト。スト</iomanip>…

C#_PictureBox のサイズを Image に合わせる

つまらんところでハマった。けどメモしとく。 Form → Panle → PictureBox と設置している場合。 Form 、Panel の両方とも AutoSize プロパティを True に設定。 PictureBox は Dock プロパティを Fill に設定。 これで Form のサイズが image に合う。 以上。

浮動小数点数とは

小数点のことでしょとしか認識なかった。 コンピュータ世界における小数の扱い方のひとつ。仮数部と指数部のみを記憶しておくやり方。 123.45 という数字は指数表記にすると、1.2345 * 10 ^ 2 。1.2345 が仮数。10 が基数。2 の部分が指数。 1/100 を掛ける…

C#_List から特定の文字を含むものを除外

ex ) fuga が入っているファイル名以外を List に格納。 List<string> allFile = Directory.GetFiles(@"C:\Hoge\", "*.txt",SearchOption.TopDirectoryOnly).ToList(); string fuga = "fuga"; List<string> getFile = allFile.Where(file => !file.Contains(fuga)).ToList();</string></string>…

C#_xxx.dll またはその依存関係の 1 つが読み込めませんでした。見つかりません。

C#

OpenCV をインクルードしたプロジェクトを作るとよく出る。 Application.Run( new Form1( ) ); で例外発生。 ファイルまたはアセンブリ 'xxx.dll'、またはその依存関係の 1 つが読み込めませんでした。指定されたモジュールが見つかりません。 だが、実行フ…

C#_匿名関数とは

経緯M(int value) => X = value; が匿名関数だと思ってた。違かったので調べた。匿名関数=ラムダ式と捉えてよい感じ。 C# 2.0 では匿名メソッド式、C# 3.0 ではラムダ式という構文がある。これらを合わせて匿名関数と呼ぶ。 ラムダ式は匿名メソッド式の上位…

苛立ちについて

イライラすると疲れるので、どうにかならないかと思い調べた。 イライラはストレス反応。イライラは自分に対するのと他人に対するのがある。 原因は人それぞれだが、現実と目標や理想とのギャップを感じるとストレスがかかり、苛立つ。劣等感や自己嫌悪もギ…

OpenCV_背景差分

3.x は、BackgroundSubtractorMOG2 を使うもよう。 ただのソースコピペ int main(int argc, char * argv[]) { cv::VideoCapture cap("./hoge.wmv"); cv::namedWindow("test", CV_WINDOW_NORMAL); cv::Mat src; cv::Ptr<cv::BackgroundSubtractorMOG2> pMOG2; pMOG2 = cv::createBackgroundS</cv::backgroundsubtractormog2>…

C#_テキストボックスのイベント一覧 ( M ~ V )

続き。コントロールと記載してあるのはテキストボックスのことだが、他のボタンやラベルでも同様のイベントあるだろうから、コントロールと記述。 名前 説明 MarginChanged コントロールのマージンが変更された時に発生。 Margin:他のコントロールとの間の…

C#_テキストボックスのイベント一覧 ( A ~ L )

テキストボックスのイベント一覧を取りあえず把握。他のイベントを知っていれば容易にコードかけた時あったので。 名前 説明 AcceptsTabChanged AcceptsTab プロパティの値が変更された時に発生。 AcceptsTab:Tab キーが押下された時に、次のコントロールへ…

C#_exe ファイルにドロップされたファイルのパスを取得

実行ファイルだけでなく、ショートカットにドロップしたファイルパスも取得可。img ファイルならパス取得後に pictureBox に img を表示したり。 ex ) ドロップしたファイル名のフルパスが表示される。 string[ ] files =Environment.GetCommandLineArgs(); …

C#_Dictionary の使い方

PHP の連想配列にあたるコレクションかと。添え字は通常数値だが、連想配列では好きな名前にできる。 添え字と値をセットで操作したい時は KeyValuePair を使う。 ex ) Dictionary の操作。string が key で Point が value。ソースは所々省略。 Dictionary<string, Point> </string,>…

C#_正規表現における「\」と「"」

「ファイル名に次の文字は使えません」の実装で意外とハマった。 結論から @ を用いた場合、「 " 」を指定したいなら「 "" 」と指定。 テキストボックスで入力した「 \ 」や「 " 」は「 \\ 」「 \" 」とエスケープされて送られてくる。 ※ using System.Text.…

C#_特定のキーを押下したら処理を走らせる

※ KeyDown イベントはビューデザイナーのプロパティから設置済み。 ex ) A キーを押下した場合、処理 X が走る private void Form_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode != Keys.A) { return; } //処理 X } こちらから。 https://dobon.n…

C++_Enter キーを押下したら処理が続行

Enter キー を押すまでは待機状態にしたい。 getchar ( ) を書くだけ。 // 処理 1 getchar(); // ここで入力待ち // 処理 2 Enter キーが押下されたら処理 2 が走る getchar() はその名通り文字を受け取る関数。Enter ( 改行 ) が押されて初めて入力した文字…

OpenCV_RGB 画像を分離

cv::split を使う。 分離した R・G・B は 1 チャンネルなので、カラーで表示するには他の輝度 (輝度値 0 ) で補う。 なお、分離した 1 チャンネル Mat を 3 チャンネルに統合するにはcv::merge を使う。 ex ) // 分離 splitTmp[0] ~ splitTmp[2] に B・G・R…

C++_ファイル入出力の基本 ( 出力 )

出力ファイルストリーム ( 書き込み ) について。 std::ofstream でファイルへ出力。 #include <fstream> が必要。 std::ofstream ofs( "./ファイル名" ); if ( ! ofs ) { // ファイルオープン失敗時の処理 } ofs << "Hey" << std::endl; 指定したファイルに Hey が書</fstream>…

CMake とは

lib つくるとかよく分からん。配布されてるんでないの ? という疑問があり調べた。 OpenCV に限った話ではないが、 Linux とか Unix 使う気配ないのでOpenCV のカテゴリにした。 同じソースツリーからさまざまなコンパイラー向けにビルドを行えるようにする…

C++_ファイル入出力 ( 入力 ) >> 演算子使用

ファイル読込み。getline( ) を使わないコード。 #include <fstream> 必要。 ex ) 読みやすいように半角スペース入れて箇所あり。 std::ifstream fS( "./hoge/text.txt"); if( ! fS ) { return; } int a, b; while ( ! ifsT.eof() ) { fs >> a >> b; } デリミタがスペ</fstream>…

C#_カーソルを砂時計にする ( 待機状態にする )

アプリが計算中の時、操作不可能に。and 処理が長いと終わったのかどうか分からないので。※ Win 10 では円が回っている状態。 // 元のカーソルを保持 Cursor preCursor = Cursor.Current; // カーソルを待機カーソルに変更 Cursor.Current = Cursors.WaitCur…

洗脳の手口

自分用簡易まとめ ( になっているのか疑問 ) 歌や詠唱による洗脳 外部からの孤立 依存と恐怖 運動教育法 睡眠妨害と疲労 自己批判と指差し 多大な愛情表現 スピリチュアル ( 神秘的 ) な操作 訴訟教唆の乱用 思考停止させるための決まり文句 1.歌や詠唱によ…

C#_ファイルパスからフォルダ名取得したり など

前提:openFileDialog ツールは設置済み ※ using System.IO; 文頭に記述。 ファイルパス取得 string path = openFileDialog.FileName; (フルパス取得。もちろんファイル名 + 拡張子あり) ex ) C:\HogeH\FugaF\aaa.txt ファイルを複数選択可にし、取得 openF…

C#_プロパティの自動実装機能(自動実装プロパティ)

getter / setter ( アクセサ― ) の簡略記述。 C# 3.0 から実装された。( 糖衣構文 )get / set する以外処理ない時は 自動実装プロパティの方が記述が楽。 public int HogeData { get; set; } HogeData プロパティ自体に値が保持される。なお、 set のみだと…

C#_ 1 行のみの関数 ( expression-bodied ) =>

関数メンバーの関数本体の部分が 1 つの式だけからなる場合に=> を使った簡易文法で関数定義できる。 expression-bodied 関数メンバという。本体が式・式形式。 C# 5.0 以前 public int Hoge ( int x ) { return x * 100; } C# 6 以降 public int Hoge ( int…

C#_DialogResult.OK をキャンセルしたい

※ コントロールのボタンは、DialogResult で OK と設定。 経緯 OK ボタンを押しても、処理が正常に完了などしなかったならばDialogResult.OK を押したことにしたくない ( Form を閉じたくない )。 Form1 if ( form2.ShowDialog() != DialogResult.OK ) { For…