Skip to content

Suggestion : replace SixLabors.ImageSharp with Emgu.CV #126

@bNobo

Description

@bNobo

Hi,

I made a proof of concept showing that it should be possible to replace SixLabors.ImageSharp with Emgu.CV. I've adapted only PerceptualHash and it seems to be working well. I've tested on Windows and Ubuntu.

You can find the source code of the poc here: develop...bNobo:ImageHash:replace-imagesharp-with-emgu

To make it works on Ubuntu I had to install some dependencies. Here is an excerpt of the Dockerfile I used for testing:

FROM ubuntu:24.04 AS test

RUN apt-get update && apt-get install -y dotnet-sdk-8.0 \
apt-utils \
libavcodec-dev \
libavformat-dev \
libc6-dev \
libdc1394-dev \
libgdiplus \ 
libgeotiff-dev \
libgstreamer-plugins-base1.0-dev \
libgstreamer1.0-dev \
libgtk-3-dev \
libswscale-dev \
libfontconfig1 \
poppler-utils 

WORKDIR "/src" 
COPY My.UnitTests/ ./My.UnitTests/
COPY ImageHash/ ./ImageHash/
WORKDIR "/src/My.UnitTests"
RUN dotnet test

My fork is actually sufficient for my needs, so I do not plan to work further on it. But if you think it is worth it, I could adapt AverageHash and DifferenceHash as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions