Adds perceptual hash filename generator
Als alternatief voor md5
This commit is contained in:
@@ -6,10 +6,12 @@ LDFLAGS = `Magick++-config --ldflags` $(BOOST_LIBS) -lpthread
|
|||||||
SOURCES = DescriptorManager.cpp main.cpp
|
SOURCES = DescriptorManager.cpp main.cpp
|
||||||
OBJECTS = $(SOURCES:.cpp=.o)
|
OBJECTS = $(SOURCES:.cpp=.o)
|
||||||
|
|
||||||
EXECUTABLE = small-image-descriptors
|
all: small-image-descriptors filename
|
||||||
|
|
||||||
$(EXECUTABLE): $(OBJECTS)
|
small-image-descriptors: $(OBJECTS)
|
||||||
$(CXX) -o $@ $(OBJECTS) $(LDFLAGS)
|
$(CXX) -o $@ $(OBJECTS) $(LDFLAGS)
|
||||||
|
filename: filename.cpp
|
||||||
|
$(CXX) $(CPPFLAGS) -o filename filename.cpp $(LDFLAGS)
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
rm $(EXEC) $(OBJECTS)
|
rm small-image-descriptors filename $(OBJECTS)
|
||||||
|
|||||||
Executable
+31
@@ -0,0 +1,31 @@
|
|||||||
|
#include <iostream>
|
||||||
|
#include <Magick++.h>
|
||||||
|
#include <bitset>
|
||||||
|
#include <string>
|
||||||
|
#include <codecvt>
|
||||||
|
#include <locale>
|
||||||
|
#include <iomanip>
|
||||||
|
#include "Descriptor.h"
|
||||||
|
|
||||||
|
using namespace Magick;
|
||||||
|
|
||||||
|
int main(int argc, char **argv) {
|
||||||
|
std::string filename;
|
||||||
|
if (argc > 1) {
|
||||||
|
filename = argv[1];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
std::cout << "Usage: " << std::endl << argv[0] << " filename" << std::endl;
|
||||||
|
std::cout << "Continuing.." << std::endl;
|
||||||
|
}
|
||||||
|
Descriptor* d = new DCTMedian();
|
||||||
|
InitializeMagick(*argv);
|
||||||
|
Image* img = new Image(filename);
|
||||||
|
uint64_t result = d->feature(img);
|
||||||
|
std::cout << std::hex << result;
|
||||||
|
if (argc > 2) {
|
||||||
|
std::cout << std::endl << std::dec << result;
|
||||||
|
std::cout << std::endl << bitset<64>(result).to_string() << std::endl;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user