こんにちは私は後で使用できるように画像ピクセルを行列にコピーしようとしていました。私はJSで行列を使用していた場合、私はbegginer感謝
キャンバスを使用して画像ピクセルの2次元配列を作成するhtml5
<canvas id="Canvas" >
Navigator doesnt support canvas
</canvas>
<script type="text/javascript">
var img = new Image();
img.src = "jj.JPG"; // Set source path
img.onload = function() {
var matrix = [];
context.putImageData(idata, 0, 0);
for(var y = 0; y < canvas.height; y++) {
matrix[y] = [];
for(var x = 0; x < canvas.width; x++){
var imgd = context.getImageData(x, y, canvas.width, canvas.height);
var pix = imgd.data;
var pos = (y * canvas.width + x) * 4;
matrix[y][pos]= pix[pos];; //red
matrix[y][pos+1] =pix[pos+1];; //bleu
matrix[y][pos+2]= pix[pos+2];; //green
matrix[y][pos+3]= 255; //alpha
}
}
</script>
</body>
</html>
それは私には思われるが居ないので、私は正常に思っていたこと 'VARのPOS =(Y * canvas.width + x)* 4'は、画像データを表すために1次元配列を使用する別のコード片から来る。しかし、あなたの行列は2次元です。すべての[y]部分を削除するだけで行列を平坦化できます。 –
le_mすべての[y]を削除しましたので、これは正しいですか?助けてくれてありがとう –