タグ

ブックマーク / kyokushin.hatenablog.com (5)

  • へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 3.5日目 - 虚苦心観察ブログ

    はじめに 2.5日目につづき今回もPython版を作成したので解説していこうと思います。 ただし、アルゴリズムについてはC++版を参考にしてもらうことにして、ここではC++版とPython版での違いについて紹介していきます。 C++Pythonでのピクセルアクセス方法の違い C++ではOpenCVのクラスcv::Matに画像データを保持しますが、Pythonにはcv::Matは存在しません。 では何を使うのかというと、Pythonの数値計算ライブラリであるnumpyのndarrayを利用します。 numpyのデータ構造の一つであるndarrayはC++のcv::Matに比べてかなり柔軟な書き方ができます。 例えば今回の場合だと、文字のない範囲を塗りつぶす、という処理を行っているわけですが、C++版とPython版を比べてみましょう。 C++版 //文字のない範囲を3チャンネルの原画像に書

    へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 3.5日目 - 虚苦心観察ブログ
  • へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 3日目 - 虚苦心観察ブログ

    はじめに 前回の2日目では小説の画像に二値化を行い、積分画像を生成しました。 生成したところ、なんだか文字のある領域とない領域が判別出来そうだ、というところまでわかりました。 今回は前回生成した積分画像から文字のある領域とない領域を実際に判別してみようと思います。 文字のない領域の見つけ方 2日目の復習 2日目でもある程度説明しましたが、作成した積分画像からは以下のことがわかります 積分画像の下端(青)の横方向の変化を調べ、値が変化していない領域を調べれば以下のようになり、 積分画像の右端(赤)の縦方向の変化を調べ、値が変化していない領域を調べれば以下のようになるはずです。 さらにこの2つの調べた結果を合わせると、 となって文字のある領域と文字のない領域を判別できるはず! なんとなく出来そうなのでプログラムを書いてみましょう。 書かなきゃわからないですし、2日目の結果からそれっぽい結果も得

    へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 3日目 - 虚苦心観察ブログ
  • へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 2.5日目 - 虚苦心観察ブログ

    はじめに 1日目で宣言したとおりPythonでもプログラムを作成しました。 ただC++と同時にプログラムを載せて説明するとややこしいと思ったので*.5日目というかたちで書いてみました。 なお、プログラムはC++と同じリポジトリで公開し、タグもPython版のものを作ります。 今回はPython版の初回なのでC++版とことなる点について説明するために別の記事としましたが、説明が必要なさそうな場合はC++版と一緒にPython版を公開するだけになると思います。 C++版とPython版での大きな違い C++版とPython版での大きな違いはOpenCVでの画像データの取り扱いです。 C++版ではOpenCV独自のデータ構造であるcv::Matを使って画像データを表現していましたが、 Python版ではcv::Matは使わず、Pythonの数値計算ライブラリであるnumpyの行列ndarrayに

    へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 2.5日目 - 虚苦心観察ブログ
  • へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 2日目 - 虚苦心観察ブログ

    はじめに 1日目では何を作るか、どういった方針で作るか、ということをまとめて書いたので早速作り始めていこうかと思います。 さっそく考える まずは余白を検出しよう、と考えた 作りたいのは電子書籍チェックプログラム、チェックするうえで必要なのはページ番号です。 ページ番号は1日目で紹介した の各部名称 によるとノンブルと呼ぶらしいです。フランス語らしいのでここではページ番号と呼びます。 電子書籍チェックプログラムではページ番号を切り出し、それをページごとに並べることでページ抜けをチェックしやすくすることを目標としています。なのでページ番号を切り抜く必要があります。 そのページ番号はを構成するものの中で最も外側にあります。もっとも外側ということは余白に隣接しているということになります。 ですから余白を検出できればページ番号を切り出すのも簡単なのでは?と考えました。 ですが、ページ番号の場所を

    へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 2日目 - 虚苦心観察ブログ
  • へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 1日目 - 虚苦心観察ブログ

    はじめに ちょっとやりたいことがあるのですが、ただ単にプログラム書いて公開、というのも味気ないし、最後まで作りきらない気がしたので日記のように覚え書きをしながらプログラムを書いていこうと思い、「へっぽこ知識で作る画像処理プログラム」というタイトルで週1程度で更新していこうかと思います。 最終目標! ”はじめに”で書いたちょっとやりたいこと、というのが最終目標です。 そのちょっとやりたいこと、というのは画像処理の基礎知識で自炊した電子書籍のチェックプログラムを作ることです。 なぜ電子書籍チェックプログラム? 部屋のを自炊したはいいけど・・・ 自炊というのは1冊の紙のをスキャナーで取り込んで1冊の電子書籍にすることです。 私は東京で一人暮らしなのですが、6畳しかない部屋で紙のというのは思いのほか場所を取ります。 そこで「自炊」です。自炊をすることで紙のは電子化され場所をとらなくなります

    へっぽこ知識で作る画像処理プログラム 「自炊本のページ抜けチェック」 1日目 - 虚苦心観察ブログ
  • 1