Moiz's journal

プログラミングやFPGAなどの技術系の趣味に関するブログです

ゼロから作るRAW現像 - まとめページ

ゼロから作るRAW現像 はじめに この一連の記事は、RAW画像現像・カメラ画像処理の内容を実際の動作レベルで解説し、なるべくスクラッチからPython上で実行してみる事を目的としています。この記事で扱うもの 基本的なRAW現像処理・カメラ画像処理の流れ Baye…

ゼロから作るRAW現像 その8- 欠陥画素、エッジ強調、コントラスト補正

はじめに 残りの処理について 準備 シェーディング補正 ノイズフィルター ホワイトバランス raw_process5実行例 欠陥画素補正 エッジ強調 トーンカーブ補正 まとめ 最後に はじめに これは「ゼロから作るRAW現像 」という一連の記事の一つです。 これらの記…

ゼロから作るRAW現像 その7- ノイズモデルとノイズフィルター

はじめに デジタル画像のノイズ 実際の画像のノイズ ノイズフィルターの定番バイラテラルフィルター バイラテラルノイズフィルターの適用 補足:ノイズフィルター処理の高速化 まとめ 最後に 次の記事 はじめに これは「ゼロから作るRAW現像 」という一連の…

ゼロから作るRAW現像 その6 - レンズシェーディング補正

はじめに レンズシェーディング(周辺減光) レンズシェーディングの確認 レンズシェーディングのモデル化 レンズシェーディング補正 通常画像への適用 まとめ 次の記事 はじめに これは「ゼロから作るRAW現像 」という一連の記事の一つです。 これらの記事…

ゼロから作るRAW現像 その5 - ラズベリーパイのRAW画像処理

はじめに ラズベリーパイのRAW画像 ラズベリーパイの準備とRAW画像のキャプチャー RAW画像のキャプチャー ラズベリーパイのRAW画像の抽出 ラズベリーパイカメラのRAW画像の現像 ブラックレベル補正 ホワイトバランス補正 デモザイク カラーマトリクス補正 ガ…

ゼロから作るRAW現像 その4 - デモザイク処理応用編

はじめに モジュールの高速化 前回のデモザイク処理の分析 より高度なデモザイク処理 より高度なデモザイク処理、実行 画像の確認 まとめ 最後に 次の記事 はじめに これは「ゼロから作るRAW現像 」という一連の記事の一つです。 これらの記事の内容を前提と…

ゼロから作るRAW現像 その3 - デモザイク処理基本編

はじめに 簡易デモザイク処理の問題点 ベイヤー配列再訪 線形補完法 FIRフィルターを利用した高速化 まとめ 次の記事 はじめに これは「ゼロから作るRAW現像 その1 - 基本的な処理」および「ゼロから作るRAW現像 その2 - 処理のモジュール化」の続きです。…

ゼロから作るRAW現像 その2 - 処理のモジュール化

はじめに RAW画像を処理するPythonスクリプト スクリプトファイルの内部 Jupyterノートブックでの利用 まとめ 次の記事 はじめに これは「ゼロから作るRAW現像 その1 - 基本的な処理」の続きです。 その1の内容を前提としていますので、まだお読みでない方…

ゼロから作るRAW現像その1 - 基本的な処理

はじめに RAWファイルおよびRAWデータについて カメラ画像処理 準備 RAW画像読み込み 画像データ変換 ブラックレベル補正 簡易デモザイク ホワイトバランス補正 カラーマトリクス補正 ガンマ補正 まとめ 最後に 次の記事 改定履歴 はじめに 会社の同僚にrawp…

Raspberry Piのベアメタル環境からSDCARDにアクセスする(BUSモード編)

はじめに Raspberry Piのベアメタル環境からGPIOを経由してSD CARDをアクセスする方法について、BUSモードでも成功したので紹介します BUSモード 前回のエントリーではRaspberry PiでOSなどを介さず、EMMC 1も使わず、GPIO機能のみを使ってSD CARDにSPIモー…

Raspberry Piのベアメタル環境からSDCARDにアクセスする(SPIモード編)

はじめに Raspberry Piのベアメタル環境からSD CARDをアクセスする方法について、限定的ながらある程度成功したので紹介します 周辺機器アクセスはベアメタルの鬼門 ベアメタルというのはOSなしの環境なので、当然ながらプログラミングにあたって各種OSの便…

プロセッサの中のプロセッサとインストラクション・セットの多様性

プロセッサの中にも多数のプロセッサがいる 最近出版された「コンピュータ・アーキテクチャ 定量的アプローチ 第六版」に新設された第7章のドメイン・スペシフィック・アーキテクチャ(DSA)の章を読んでいたところ、面白い記述があった。まず前提としてラ…

「実践コンピュータビジョン」の全演習問題をやってみた、というブログを書いた

夏頃にオライリージャパンの「実践コンピュータビジョン」という本を読み、全演習問題に挑戦しました。もともとこのブログにそのことを書こうと思っていたのですが、はてなブログでは大量のコードが出てくる記事を書くのがなんともおっくうで、延ばし延ばし…

衣類乾燥機を修理してみたよ

衣類乾燥機が壊れた 先日衣類乾燥機が突然動作しなくなった。 パネルやモーターなどは普通に動いていて排気口からは風も出てくるが、温度が上がらず当然衣類もまったく乾かない。買ったのは四年前で当時入ったショップの延長保証も1年前に切れている。さて…

ラズベリーパイ版Haribote OSのビルド環境とインストール方法

だいぶ間があいてしまいましたが、ラズベリーパイ用Haribote OSのビルド方法について紹介します*1 PC環境はUbuntu 16.04を想定していますが、他のバージョンのUbuntu又は、他のLinuxでも同様にビルドできると思います。 2017.10.13追記: Raspberry Pi上のStr…

Brainf**k CPU でマンデルブロー集合を試してみた

FPGA上で動作するBrainf**k CPUを使ってマンデルブロー集合を表示させてみる Brainf**kで書いたマンデルブロー集合を計算するプログラムがある、と聞いてずっと自作のBF CPUで動作させたいと思っていました。HDLを改造することで動作させることに成功したの…

FPGAで動作するBrainf**k CPUをパイプライン化、スーパースカラー化もどきして、ベンチマークをとってみた

はじめに 前回のエントリーで紹介したFPGAで動作するBrainf**k CPU(BF CPU)を高速化しました。 高速化にあたっては 明らかに無駄なところを直す パイプライン化 スーパースカラー的な並列化 の3つを試してみました。また各段階毎にごく簡単なベンチマーク…

FPGAで動作するBrainf**k CPUを作ってみた

はじめに 前回のエントリーに書いたとおり、Brainf**k言語を直接実行するCPUがFPGA(Terasic DE0)で動作したのでまとめてみます。 VerilogのコードとQuartusのプロジェクトファイルはこちらに公開してあります。 github.com 以下この稿では、このCPUをBF CPU…

Brainf**k言語を直接実行するCPUがFPGAで動いた

なんとか動き出したので、そのうちGitHubに上げてブログで紹介します

Ubuntu16.04 64-bitで、Quartus II 13.1からModel-sim

前回の続きでQuartus II 13.1に付属のModel-sim Altera Starter Edition 10.1を64ビット版のUbuntu 16.04で動かしてみました。前回も触れましたが、64bit版Linuxと旧バージョンのQuartusの相性はあまり良くないようです。また、Ubuntuはサポート外となって…

Ubuntuに古いQuartus IIを入れたらいろいろ大変だった

Ubuntu16.04(64ビット)にQuartus II 13.1 Web Editionを入れた際のメモ 久しぶりにFPGAボード(Terasis DE0)を動かそうと思ったのですが、最近デスクトップのメインOSをUbuntuに変えたところなので、ついでにQuartus II 13.1をインストールしたところいろい…

Raspberry Pi用Haribote OSの変更箇所2 - タスクスイッチ

本稿について 先日Githubに公開したラズベリーパイ用Haribote OSについてオリジナルのX86版からの変更箇所解説2回目です。齢のせいか、たったの一月で何をやったのかどんどん忘れて来ているので、なるべく急いで進めて行こうと思います。今回はタスクスイッ…

Brainf**kを直接実行するCPUを作ってみる

Brainf**kについて 先日こちらのブログを拝見しました。 itchyny.hatenablog.com 見に行ったときはLLVMについて興味があったのですが、記事中で使われているBrainf**kという言語に興味津々。恥ずかしながらこれまで存在を知りませんでした。Wikipediaによる…

Raspberry Pi ZeroでHaribote OSを動かす

650円のコンピュータRaspberry Pi Zero 先日Raspberry Pi Zeroが日本でも正式に発売されるというニュースがありました。 Raspberry Pi Zero 取扱開始のお知らせ - Raspberry Pi Shop by KSY Raspberry Pi版Haribote (RPi Haribote)は、もともとHaribote O…

Raspberry Pi用Haribote OSの変更箇所1 - セグメントのページングによる置き換え

本稿について 先週Githubに公開したラズベリーパイ用Haribote OSについて書いた前回のエントリー、趣味の自作OSという非常にニッチで注目されにくい分野の記事ながら、数千のアクセスをいただきました。また、ツイッターでは、旧交を温めるきっかけになった…

「30日でできる!OS自作入門」のHaribote OSをラズベリーパイに移植してみた

本稿について タイトル通りですが、HariboteOSのラズベリーパイへの移植が一段落したので報告したいと思います。 「30日でできる!OS自作入門」とHaribote OSとは 『30日でできる!OS自作入門』とは2006年に発行された川合秀実氏のOS入門書です。Haribote OS…

2016年にuClinuxをDE0ボードで動かす

2016年にuClinuxをDE0ボードで動かす FPGAボードDE0と、参考書籍「FPGAボードで学ぶ組み込みシステム開発入門[Altera編]」 最近FPGAで遊びたくなり、「FPGAボードで学ぶ組み込みシステム開発入門[Altera編]」と、書籍中で使われているTerasic社のDE0を買って…

アメリカの医療費と医療保険について

日本の医療費は安いですね こんなエントリーが話題らしい はてな匿名ダイアリー「医者の権益確保システム凄すぎワロタ」 最初の部分、整形外科に行ってレントゲンとって診察受けて処方箋もらって医療費合計 10,750円、というのを見て日本の医療費は安くてい…

Onenoteとの組み合わせでOutlook+GTDの弱点を克服する

OutlookでGTD ライフハックの九割は時間の無駄、残りのほとんどもたいして益がないが、中にはごく希に良い物も含まれている。私が使っているのは、もはや定番すぎてここに書くのも恥ずかしいが、GTD (Getting Things Done)だ。GTDの中身については本家David …

非破壊自炊

「日本の富士通は、書籍を最初にスキャナで取り込んだとき、 本を束ねたままではスキャンできない事を発見した。 これでは裁断しないと自炊ができない。 富士通の技術者たちはこの問題に立ち向かうべく、数年の歳月と巨額の開発費をかけて研究を重ねた。 そ…