<pre>
Remove all Black Pixels
A.iterate getImageData()
<canvas id="naive" width=640 height=480>
</canvas>
B. TypedArray.copyWithin
<canvas id="copyWithin" width=640 height=480>
</canvas>
</pre>
//our image
var imag = new Image();
imag.decoding = 'sync';
imag.src = "data:image/png;base64,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";
var ctx1;
var ctx2;
var ctx3;
var c1;
var c2;
var c3;
imag.onload = () => {
console.log(imag.width);
//grab the canvases
c1 = document.getElementById("naive");
c2 = document.getElementById("copyWithin");
c1.width = imag.width;
c1.height = imag.height;
c2.width = imag.width;
c2.height = imag.height;
//create a canvas for manipulating our image
c3 = document.createElement("CANVAS");
c3.width = imag.width;
c3.height = imag.height;
//context2d
ctx1 = c1.getContext('2d');
ctx2 = c2.getContext('2d');
ctx3 = c3.getContext('2d');
//cache our image
ctx3.drawImage(imag,0,0);
}
//A. iteration
var imageData = ctx3.getImageData(0,0,imag.width,imag.height);
var data = imageData.data;
var threshold = 50;
for (let i = 0; i < data.length; i+=4)
if (((data[i] +data[i+1] + data[i+2])/3) < threshold)
data[i+3] = 0;
//draw the finished result
ctx1.putImageData(imageData,0,0);
//B. copyWithin
var imageData = ctx3.getImageData(0,0,imag.width,imag.height);
var data = imageData.data;
const bluemask = data.copyWithin(1,0);
const greenmask = data.copyWithin(2,0);
const redmask = data.copyWithin(3,0);
//start masking
ctx3.putImageData(new ImageData(redmask, imag.width),0,0);
ctx2.drawImage(c3,0,0,imag.width,imag.height);
ctx3.putImageData(new ImageData(greenmask, imag.width),0,0);
ctx2.drawImage(c3,0,0,imag.width,imag.height);
ctx3.putImageData(new ImageData(bluemask, imag.width),0,0);
ctx2.drawImage(c3,0,0,imag.width,imag.height);
//gCO source-atop
ctx2.globalCompositeOperation = 'source-atop';
//draw the finished result
ctx2.drawImage(imag,0,0,imag.width,imag.height);
--enable-precise-memory-info
flag.
Test case name | Result |
---|---|
iterate | |
copyWithin |
Test name | Executions per second |
---|---|
iterate | 298.2 Ops/sec |
copyWithin | 223.3 Ops/sec |
A benchmarking question!
After analyzing the provided HTML, JavaScript code, and benchmark result, I'll attempt to summarize the findings.
Benchmark: Removing black pixels from an image using two different methods: iteration and copyWithin
.
Method 1: Iteration (iterate)
The iterate
test uses a simple loop to iterate over the pixel data of the image, checks if the average color value is below a certain threshold (50), and sets the alpha channel value to 0. The resulting image is then drawn on another canvas (c1
) using putImageData
.
Method 2: copyWithin
(copyWithin)
The copyWithin
test uses the TypedArray.copyWithin
method to create masks for each color channel (blue, green, and red). It then applies these masks to the original image data by drawing the corresponding mask on top of the original image. Finally, it draws the resulting image on another canvas (c2
) using drawImage
.
Benchmark Results:
The latest benchmark result shows that the iterate
test performed better than the copyWithin
test, with 298 executions per second compared to 223 executions per second.
However, without more information about the specific use case, hardware, and software environment, it's difficult to provide a definitive conclusion on which method is faster in general. Both methods have their trade-offs:
iterate
: Simple and straightforward, but may be slower due to the overhead of iterating over each pixel.copyWithin
: More efficient by leveraging optimized native functions, but may require more memory and processing power for large images.If you need further analysis or optimization, please provide more context about your specific use case!