Image comparison resources

This commit is contained in:
Lucian Tuca
2018-11-15 12:57:53 +02:00
parent c4d12caa14
commit 3abfc83f99
4 changed files with 63 additions and 2 deletions

View File

@@ -10,9 +10,28 @@ ENV IMAGEMAGICK_LIB_RPM_URL=https://nexus.alfresco.com/nexus/service/local/repos
ENV IMAGEMAGICK_LICENSE_FILE=https://github.com/Alfresco/acs-community-packaging/blob/master/distribution/src/main/resources/licenses/3rd-party/ImageMagick-license.txt
ENV JAVA_OPTS=""
COPY target/alfresco-docker-imagemagick-${env.project_version}.jar /usr/bin
# Image comparasion utils
RUN yum -y install epel-release && \
curl --silent --location https://rpm.nodesource.com/setup_8.x | bash - && \
yum -y install nodejs && \
yum -y install gcc-c++ make && \
yum -y install libpng12 && \
node -v && \
npm -v && \
#https://www.npmjs.com/package/mz
npm i mz && \
#https://www.npmjs.com/package/resemblejs
npm i resemblejs && \
mkdir /cmp
RUN ln /usr/bin/alfresco-docker-imagemagick-${env.project_version}.jar /usr/bin/alfresco-docker-imagemagick.jar && \
# Image comparasion file
COPY target/compare.js /cmp
COPY target/red.png /cmp
COPY target/blue.png /cmp
COPY target/alfresco-docker-imagemagick-2.0.0-RC2-SNAPSHOT.jar /usr/bin
RUN ln /usr/bin/alfresco-docker-imagemagick-2.0.0-RC2-SNAPSHOT.jar /usr/bin/alfresco-docker-imagemagick.jar && \
yum install -y wget && \
wget $IMAGEMAGICK_RPM_URL && \
wget $IMAGEMAGICK_LIB_RPM_URL && \

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 B

View File

@@ -0,0 +1,42 @@
#!/usr/bin/node
const compareImages = require('resemblejs/compareImages');
const fs = require("mz/fs");
// npm i mz
// npm i resemblejs
async function getDiff(img1Path, img2Path){
const options = {
output: {
errorColor: {
red: 255,
green: 0,
blue: 255
},
errorType: 'movement',
transparency: 0.3,
largeImageThreshold: 1200,
useCrossOrigin: false,
outputDiff: true
},
scaleToSameSize: true,
ignore: ['nothing', 'less', 'antialiasing', 'colors', 'alpha'],
};
// The parameters can be Node Buffers
// data is the same as usual with an additional getBuffer() function
const data = await compareImages(
await fs.readFile(img1Path),
await fs.readFile(img2Path),
options
);
console.log(data);
await fs.writeFile('./output.png', data.getBuffer());
await fs.writeFile('./output.json', JSON.stringify(data));
}
getDiff(process.argv[2], process.argv[3]);
//getDiff('/Users/p3700621/Downloads/44174363_1996471110414725_5527179798176071680_o.jpg', '/Users/p3700621/Downloads/44300765_1996444827084020_2153540260556963840_o.jpg');

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB