それが僕には楽しかったんです。

僕と MySQL と時々 MariaDB

2016-01-01から1年間の記事一覧

遺伝的アルゴリズムとその応用

遺伝的アルゴリズム ~Genetic Algorithm~ 遺伝的アルゴリズム(Genetic Algorithm)とは、近似解を探索するアルゴリズム。 主にランダム性を持って要素を変化させる。進化的アルゴリズムの一つでもある。このアルゴリズムはデータを遺伝子として表現し、一つ一…

確率的解析と乱択アルゴリズム

確率的解析と乱択アルゴリズム 確率論と計算機における問題解決の手法として 確率的解析と乱択アルゴリズムについて解説していく。 ここでは以下の問題を考える。 雇用問題 問題: あなたは秘書を雇おうとしている。 その際にあなたは代理店を利用することに…

gdbを使ってコアダンプの原因を解析

コアダンプは嫌いだ。 大学やその他情報系専門科のある学校に通ったことがある人が一度は触ったことがあるであろう、C言語。 こいつは近年の言語に比べてものすごく面倒くさい書き方をするし、手間もかかる。 中でも最悪なのが「コアダンプ」の文字。 これは…

セキュリティミニキャンプ北海道2016に参加してきた

初めてミニキャンに参加してきた LOCAL学生部に加入して、しばらくしてからミニキャンのお知らせが回ってきたから何をやるんだという感じで詳細を見てみると…。Linuxでハードウェア制御、スマホアプリでサーバサイドへの攻撃と対策、クラウドセキュリティ基…

さくっとアセンブリ入門 hello,world編

さくっとアセンブリ入門 なんとなくアセンブリをはじめてみる レジスタがーとかメモリがーっていうお話は割愛 とりあえず「Hello,World」 まずはお決まりの「Hello,World」から .globl main main: movl $4,%eax movl $1,%ebx movl $msg,%ecx movl $13,%edx i…

メディアンフィルタ

メディアンフィルタ 移動平均法ではn*nの局所領域における濃度の平均値を領域中央の画素が保有する濃度として扱ったが 別の画質改善法にメディアンフィルタというものがある これは局所領域中の濃度値の中央値を領域中央の画素が保有する濃度として扱う方法…

サイトをリニューアルしたから今回使ったものをまとめてみた

はじめに 今回自分のサイトをリニューアルしたので kentsu-141.github.io これに使ったものをざっくりまとめてみる 基本的なデザイン まず基本的なデザインはこのホームページを見て思いついた sard.website ただ画像なんかを用意するのがめんどくさかったの…

C言語 構造体

6章 構造体 構造体とは、操作しやすいように一つの名前でまとめられた 1つ以上の異なった型の集まりであるこの構造体と呼ばれるものは大きなプログラムで特に複雑なデータを組織化するのに役立つ それは関連したデータを実体としてでなく一つの単位として扱…

C言語 ポインタと配列

5章 ポインタと配列 ポインタは、他の変数のアドレスを格納する変数でありC言語では頻繁に利用される理由は大きく分けて2つある 一つ目としてポインタを使うことが処理を行う唯一の方法である場合があるから 二つ目はポインタを用いて記述したほうが、それ…

Javaオブジェクトのライフサイクル管理

はじめに javaではnewを使うことで簡単にオブジェクトを生成できるが プログラムの規模が大きくなると、オブジェクトの生成から消滅までの管理が複雑化してしまうオブジェクトのライフサイクルを適切に管理するには以下のようなやり方がある・変数のスコープ…

OpenGLをC言語で扱う①

OpenGLをC言語で扱う 今回から画像処理以外にCGの部分も少しずつやっていこうと思ってこれからOpenGLをC言語でぼちぼち扱っていこうと思うインストールとかその他もろもろの環境構築は割愛 空ウィンドウを表示する まずはとりあえずウィンドウだけを表示して…

RaspberryPiにSambaをインストールしてサーバー化する

はじめに 結構前にRaspberryPI B+を買っていて そのままになっていたのを発見したのでsambaでもインストールしてサーバー化しようと思う sambaのインストール これはすごく簡単で sudo apt-get install sambaでいい sambaの設定 インストールすると/etc/samb…

移動平均法

移動平均法 今回は移動平均法を自分で実装してみた そもそも移動平均法とは、一枚の画像に含まれるノイズを除去する基本的な手法の一つで 入力画像における(i,j)成分の濃度に対しその近傍の濃度値の平均値を出力画像の(i,j)成分とする方法のこと その過程に…

判別分析法

判別分析法 判別分析法とはざっくり言えば2値化の手法の一つで 分離度という値が最大になる値を見つけ、自動的に2値化する手法分離度はクラス間分散とクラス内分散の比で求めることができる 具体的な仕組み 今、しきい値を として これがまず判別分析法を…

OpenCV+Pythonで顔にモザイク処理をする

顔にモザイク 最近はずっと画像処理の理論的な部分ばかり勉強していて、これといった成果物を出してないから 簡単に作れるものをとりあえず作ってみようっていうことで 今回は、OpenCV+Pythonで顔にモザイクをかけてみた顔認識とかはよくわからないしそうい…

python入門

はじめに 最近OpenCVをpythonで扱うことが多くなったので一度しっかりと勉強してみる 今回は自分の備忘録として書くようなスタイルなので、ある程度プログラミング言語を他に扱えることを想定している なので、ところどころ説明を省くので全くの初心者が見る…

画像処理におけるヒストグラム

はじめに 今回は画像処理をするとき(2値化などで)に使うヒストグラムというものについてまとめる ヒストグラムとは ヒストグラムとは画像処理以外の分野で使われることもあるが 画像処理の分野では、各濃度値に対してその濃度値を持った画素数を求めたもので…

画像処理における標本化と量子化

はじめに 画像処理でグレースケールと白黒について書いたがそれをもっと掘り下げようとすると量子化についてのまとめが必要で、さらに量子化を説明しようとすると標本化まで説明しないと行けないので今回はその両方を説明する 標本化 標本化とはざっくり言え…

グレースケールと白黒画像

はじめに 今回はグレースケールと白黒画像について少しまとめていく あまり画像処理に興味がない人は、どっちも対して変わらんと思うだろうけど 実は明確な差がある 白黒画像 googleで白黒画像と検索すると以下のような画像が出てくるが これは正確には白黒…

OpenCVで画像の読み込みと表示、保存

画像の読み込みと表示、保存 OpenCVを使って画像処理をしようにも、まず対象の画像が読み込めないと何もできないそして、いろいろやっていった結果の画像を見れるといいなというわけでさらにいろいろやった結果を出力できたらなおいいというわけで、今回は全…

PythonでOpenCVを使えるようにする

環境 Ubuntu 14.04 Python 2.7.4 方法 まずは例にならって環境を最新にする sudo apt-get update sudo apt-get upgradeこれで必要なパッケージをインストールするだけ sudo apt-get install libopencv-dev sudo apt-get install python-opencvnumpyが必要な…

画像処理に関してぼちぼち書き始めていく

もともと画像処理に興味があったので備忘録的な感じでまとめていこうかと思うとりあえずまずはOpenCVをpythonかC言語で使いつつ、画像処理について勉強してひと通りやったら画像処理ライブラリでも作っていくことにする

C言語 関数とプログラム構造

4章 関数とプログラム構造 C言語で書かれたプログラムは大抵、大きな計算処理を小さな多くの関数に分割して作成される その関数群は一つのソースファイルであるか、全体を通して言えば複数のソースファイルに分割されている そしていくつかの大きな関数から…

C言語 制御の流れ

3章 制御の流れ ここでは今まで普通に使ってきた制御に関することをもっと掘り下げていく 3.1 ブロックと文 これは凄く簡単なことで、C言語では式に;(セミコロン)を置くことで文になる なので宣言や代入などそれら単体で文として独立する また中カッコ{}は、…

C言語 データ型、式、演算子

2章 データ型、式、演算子 前回の1章でざっくりとした入門を終えたので、今度はひとつひとつ掘り下げていきます。 はじめは、大抵どの入門書でもはじめに扱うデータ型、式、演算子というものです。まず宣言と演算子を交えて… 宣言は変数を並べて、型を定義…

C言語 やさしい入門

この前、プログラミング言語Cという C言語の開発者が書いている本を買ったので それで勉強したことをまとめていく 1.第一章 やさしい入門 この章では細かい点を抜きにしてCを手短に紹介している 1.1 手始めに まず避けては通れない 「hello,world」の出力を…