回答ありがとうございます。質問をもっと具体的にするべきでした。私はいくつかの例を見ましたが、これは W3 Schools のものです (これは信頼すべきソースではないことを指摘してくれた @Pointy に感謝します - しゃれは意図されていません)。
http://www.w3schools.com/tags/canvas_getimagedata.asp
<!DOCTYPE html>
<html>
<body>
<img id="scream" src="img_the_scream.jpg" alt="The Scream" width="220" height="277">
<canvas id="myCanvas" width="220" height="277" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.
</canvas>
<script>
document.getElementById("scream").onload = function () {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = document.getElementById("scream");
ctx.drawImage(img, 0, 0);
var imgData = ctx.getImageData(0, 0, c.width, c.height);
// invert colors
for (var i = 0; i < imgData.data.length; i += 4) {
imgData.data[i] = 255 - imgData.data[i];
imgData.data[i + 1] = 255 - imgData.data[i + 1];
imgData.data[i + 2] = 255 - imgData.data[i + 2];
imgData.data[i + 3] = 255;
}
ctx.putImageData(imgData, 0, 0);
};
</script>
</body>
</html>
まず第一に、W3 Schools Web サイトの例では画像のピクセルの色が反転しているため、少し混乱していますが、コードを Sublime Text 2 にコピーして保存し、Chrome で開くと、ピクセルの色は次のようになります。画像が反転することはなく、画像はその隣にまったく同じように表示されます。
私の主な質問は、このコードに行を追加して、画像のピクセルデータの配列全体を表示するにはどうすればよいですか?
画像の下に「data」の id を持つ空の div を追加し、次のコードを追加しましたが、ピクセル データの配列全体が表示されませんでした。
document.getElementById("data").innerHTML=imgData.data;
また、以下を追加して、少なくともピクセルデータ配列の長さを確認しようとしましたが、うまくいきませんでした:
document.getElementById("data").innerHTML=imgData.data.length;
さまざまなソースから画像ピクセル データを操作する例をいくつか見て、ピクセル データの配列全体を取得しようと何度も試みましたが、できませんでした。
ピクセル データの配列を表示して、画像内の文字や画像を認識し、画像内の特定のものから現れる可能性のあるパターンを確認したいと考えています。
どうもありがとうございました。