タグ

2016年1月26日のブックマーク (17件)

  • PHP でバイナリ変換プログラミング

    Tier Ⅳ Tech Meetup #2 - 自動運転を作るのはCloudシステムの集合体?? 活用技術を大解剖 -Tier_IV

    PHP でバイナリ変換プログラミング
  • JPEGのフレームヘッダを読んでwidthとheightを取り出す - 昼メシ物語

    突然ですが、JPEG の構造はだいたい下記のような感じになってます。 今回は libjpeg 等のライブラリを使わずに、JPEGファイルから画像の width と height を取り出したいと思います。この width と height の情報は、上図におけるフレームヘッダセグメントに入っています。 基礎知識 フレームヘッダセグメント フレームヘッダセグメントの中身は、以下のとおりです。 データ サイズ(bit) フレーム開始マーカー 16 フレームヘッダのサイズ(byte) 16 サンプル精度 8 height 16 width 16 省略 あとは、サンプリングファクタとかが延々と続くんですが、今回は不要なので省略しています。 ヘッダセグメント フレームヘッダ以外のヘッダセグメントには、EXIFデータやサムネイルなど、画像のデコードに直接関係ないメタデータが入っています。 JPEGでは

    JPEGのフレームヘッダを読んでwidthとheightを取り出す - 昼メシ物語
  • [新機能]Amazon Elastic TranscoderでアニメーションGIFを作ってみた | DevelopersIO

    はじめに Amazon Elastic Transcoderの新機能発表がありました! Amazon Elastic Transcoder Update – New Formats & Conversion Controls 今回の新機能では、新たに3つのフォーマットに対応しました。 FLV(動画:H.264、音声:AACまたはMP3) MPG(動画:MPEG-2、音声:MP2) アニメーションGIF MPGについてはテレビ向けとして、FLVとアニメーションGIFについてはWeb向けとして、対応が行われたとのこと。ここでやはり気になるのはアニメーションGIFではないでしょうか!個人的に! ということで、早速やってみました。 やってみた まず、Amazon S3上にバケットを作成し、ファイルアップロード用と変換済みファイルを保存する用の2つのフォルダを用意しておきます。今回はsmokeyte

    [新機能]Amazon Elastic TranscoderでアニメーションGIFを作ってみた | DevelopersIO
  • ほぼ日刊イトイ新聞 - 適切な大きさの問題さえ生まれれば。 4 適切な大きさの問題さえ生まれれば、 問題は自然と解決する。

    そうです、そうです。 ぼくは、「Ruby」という オープンソースのプログラムをつくった まつもとゆきひろさんという人に 「オープンソースの秘密」について うかがったことがあるんですけど、 彼がとても興味深いことを言ってたんです。 どういうことかというと、 彼にはまず、つくりたいものがあるんですね。 誰かのために、というのではなく、 「自分はこういうものがつくりたい」と思って ひとりでダーッとつくっていく。 そうすると、自然に適切な大きさの 問題が生まれていくというんですね。 たとえば、自分のつくりたいことが、 この机いっぱいくらいの大きさだとすると、 「この机いっぱいの大きさのものをつくる」 と宣言してつくりはじめるんだけど、 人間ひとりのできることには限界があるから、 まあ、一部分だけしかできない、と。 そうすると、あいつが言ってたのに できてないところがここにあるぞ、とか、 つくったと

    ほぼ日刊イトイ新聞 - 適切な大きさの問題さえ生まれれば。 4 適切な大きさの問題さえ生まれれば、 問題は自然と解決する。
    razokulover
    razokulover 2016/01/26
    辻プログラマー
  • Perlin Noise

    Many people have used random number generators in their programs to create unpredictability, make the motion and behavior of objects appear more natural, or generate textures. Random number generators certainly have their uses, but at times their output can be too harsh to appear natural. This article will present a function which has a very wide range of uses, more than I can think of, but bas

  • 仮眠プログラマーのつぶやき : パーリンノイズアルゴリズム 前編

    2010年06月30日04:12 カテゴリパーリンノイズアルゴリズム パーリンノイズアルゴリズム 前編 Perlin noiseのことを最初適当に知ろうと思ってwikipediaをのぞいてみたが、なんかあんま参考にならん・・・ページの下に関連リンクがあったので覗いてみた。 生成方 KEN (2019/12現在リンク切れ) 図やグラフから文章を推測するというなんとも奇妙な解読法で、なんとか理解したような気がした。 実際プログラムするときは上の生成方のHPが参考になった。 ではわかったことだけでもまとめていきたいと思う。 Perlin noise と普通のnoiseの違い (導入) 以下の話は全てパーリンノイズではなくバリューノイズというやつでした。すみませんでした。パーリンノイズは近日中にコード載せます。 定義の話とか面倒なので具体的な話から・・ ノイズ関数とパーリンノイズ関数があったとしよ

  • MinHashによる高速な類似検索 - Preferred Networks Research & Development

    年が明けてもう一ヶ月経ちましたね.岡野原です. 今日はMinHashと呼ばれる手法を紹介します.これは特徴ベクトルの高速な類似検索に利用することができます(クローラーの文脈だとShingleとして知られている). 今や世の中のあらゆる種類のデータが,高次元のバイナリベクトルからなる特徴ベクトルで表されて処理されるようになってきました.例えば文書データであれば文書中に出現する単語やキーワードの出現情報を並べた単語空間ベクトル(Bag of Words)で表し,画像データも,SIFTをはじめとした局所特徴量を並べた特徴ベクトル(とそれをSkecth化したもの)として表せます.行動情報や時系列データも特徴量をうまく抽出する.グラフデータもFast subtree kernels[1]と呼ばれる方法で非常に効率的に特徴ベクトルに変換することができ,グラフの特徴をよく捉えることができるのが最近わかっ

    MinHashによる高速な類似検索 - Preferred Networks Research & Development
    razokulover
    razokulover 2016/01/26
    わかりやすい
  • b-Bit MinHashによる高速かつ省スペースな類似度判定 - SmartNews Engineering Blog

    ゴクロの浜です。ネットカフェでコードを書くのが好きです。 前回のエントリーでも触れられていますが、SmartNewsはホットな話題をユーザにお届けするために、常時、膨大な数のツイートおよびURLをクロールしています。こうして収集した記事に対し、様々な分析が施されますが、その中でも重要な処理の1つに、記事の類似度判定があります。内容の似通った記事をインデックスから発見し、グループ化する処理です。 毎秒、大量の新着記事が到着することから、この類似度判定は高速に実行する必要があります。また、インデックスを全てメモリに載せているので、類似度判定を実現する際の空間効率も要求されます。 今回は、SmartNewsが高速かつ省スペースな類似度判定のために使用しているb-Bit MinHashと呼ばれる手法を紹介します。2年前に、PFIの岡野原さんが非常に分かりやすい解説記事を書かれており、エントリー

    b-Bit MinHashによる高速かつ省スペースな類似度判定 - SmartNews Engineering Blog
  • ODP - Open Directory Project

    Help build the most comprehensive human-reviewed directory of the web

  • ノイズ の生成 – YOSBITS

    この記事では、コンピュータグラフィックスで使用される代表的なノイズ生成アルゴリズムを紹介します。各アルゴリズムのサンプル画像はJavaScriptによって動的に生成しています。 ホワイトノイズ ホワイトノイズは全ての周波数で同じ強度となるノイズです。正規乱数でホワイトノイズを生成できます。 パーリンノイズ (Perlin noise) パーリンノイズはKen Perlin が 考案したアルゴリズムで、コンピュータグラフィックスのリアリティを増すために使われるテクスチャ作成技法です。炎や煙や雲を表現するのによく使われます。例えば Minecraft のような地形はパーリンノイズで生成できます。 シンプレックスノイズ(Simplex Noise) シンプレックスノイズはパーリンノイズの改良版のアルゴリズムでパーリンノイズと同様に炎や煙や雲を表現するのに使用できます。目立つアーチファクト(人工的

    razokulover
    razokulover 2016/01/26
    いろんなノイズ
  • wgld.org | library: noiseX.js リファレンス |

    概要 プロシージャルにノイズテクスチャを生成するためのヘルパーライブラリです。 noiseX.js を用いると、簡単にノイズテクスチャを生成できます。また、シームレスなノイズテクスチャを簡単に生成できることも特徴で、プロシージャルにノイズを生成したい場合に便利です。 当ライブラリは canvas タグの 2D コンテキストを利用しており、WebGL は一切利用しません。ライブラリを利用して出力したノイズは、canvas エレメントをテクスチャのソースとして扱うことで、WebGL に流用することが可能です。 また当ライブラリのライセンスは完全フリーです。改変も自由です。さほど大層なものでもありませんしね。※疑似乱数生成をもっと最適化すればだいぶ速くなると思うのですが……放置してます……アハハ…… パーリンノイズ 当ライブラリでのノイズ生成は、パーリンノイズ(perlin noize)と呼ばれ

  • [69-11] Canvasでビットマップを操作しよう(ビットマップの明度や色調の変更)

    [69-11] Canvasでビットマップを操作しよう(ビットマップの明度や色調の変更) 最終更新日:2019年02月06日 (初回投稿日:2015年03月11日) Canvasはビットマップ画像のピクセル情報を数値として扱えます。 それによって、例えばカラーの画像をグレーにしたり...など、いろんなことができます。 画像を2つ用意せずに、カラー画像をグレースケールに変化させたりできます。使えますね♪ それをやるにはまず ImageData の概念を理解して、ImageDataの中の「data」の構造を知る必要がありました。順番に見ていきましょう。 日のINDEX ImageDataのメソッド(createImageData, getImageData, putImageData) 各ピクセル情報の取り出し方(Canvas Pixel Array) data の構造 canvasの幅と高

    [69-11] Canvasでビットマップを操作しよう(ビットマップの明度や色調の変更)
    razokulover
    razokulover 2016/01/26
    canvasでのピクセル操作がわかりやすい
  • 【ジェネラティブ・アート】ランダムを操作する技術

    私たちは不完全で予測不可能な形状を望んでいるのかもしれません。しかし、だからといって不明瞭であてもなくさまようような不完全さもいりません。私たちは、有機性(オーガニック)と機械性(メカニカル)の間、カオスと秩序の間の、ちょうど良くバランスがとれたスイートスポットを探しています。 第2章「ランダム性とノイズ」まで読了。 ジェネラティブ・アートのように、作り手にすら予測不可能な出力を行うプログラムを書くにはランダム性が欠かせません。 しかし、コンピューターが生み出すランダムは、どこかシステマチックで味気ないものです。 出目に偏りがないとそれはそれで不自然なランダムなわけで、そこから生まれるのは単に雑然としただけのカオスでしかありません。 そこで、ある程度自然な偏りを持ったランダム、「ノイズ」が必要になります。 こので使用しているProcessingには、そのものずばりnoiseという関数があ

    【ジェネラティブ・アート】ランダムを操作する技術
  • さくらインターネット、演算に特化した「高火力コンピューティング」への取り組みを開始 | さくらインターネット

    さくらインターネット、演算に特化した「高火力コンピューティング」への取り組みを開始 〜Infiniband接続による大規模なGPUクラスタをPreferred Networks社と共同構築〜 自社運営のデータセンターでインターネットインフラサービスを提供するさくらインターネット株式会社(社:大阪市中央区、代表取締役社長:田中 邦裕)は、深層学習など大量の計算資源を必要とするコンピューティング需要の高まりを受け、「高火力コンピューティング」をコンセプトとした演算能力に特化したサービスへの取り組みを開始いたします。 仮想化技術をベースとしたクラウドコンピューティングの普及により、計算資源はかつてないほど身近な存在となり、1時間あたり数円から利用できる時代となりました。しかしながら、資源の共有を前提とする現在のクラウドコンピューティングは、仮想化と共有によりハードウェアのピーク性能を引き出すこ

    さくらインターネット、演算に特化した「高火力コンピューティング」への取り組みを開始 | さくらインターネット
    razokulover
    razokulover 2016/01/26
    めっちゃ残滅力高そう
  • シン・エヴァンゲリオン劇場版:|| 予告

    大変長らくお待たせ致しました。 ついに、ヱヴァンゲリヲン新劇場版:Qの続編 「シン・エヴァンゲリオン劇場版:||」の公開が、2016年 8月31日に決定致しました。

    razokulover
    razokulover 2016/01/26
    釣りだ
  • 雑なMySQLパフォーマンスチューニング

    【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮Hibino Hisashi

    雑なMySQLパフォーマンスチューニング
    razokulover
    razokulover 2016/01/26
    トランプの例わかりやすい
  • Ruby/Railsでの高速化の際に使うgem達 - Qiita

    1. ベンチマーカー プロファイルすると、プロファイル自体に時間がかかるので正しく速度が測れない。そのためベンチマーカーも使うと良い。 ただし、ベンチマーカーはどこが遅いか等の解決の糸口は教えてくれない。 benchmark-ips 2. プロファイラ 実際に速度のボトルネックを見つける際に使う。 stackprof どのメソッドに多くの時間を費やしているかがわかる これを入れても速度にさほど影響がない rblineprof 行ごとにかかっている時間を出してくれる peek-rblineprofを使うとブラウザで結果が見れる ただしプロファイリングに結構時間がかかる (3. NewRelic) 実際、これらのことを手元でやらなくても、特にstackprof的なことや、どこのページやどのSQLクエリが特に遅いかなどは、 New Relic がやってくれます。お金を払うと結構詳細な部分も見れま

    Ruby/Railsでの高速化の際に使うgem達 - Qiita