Compare commits

...

4 Commits

2 changed files with 23 additions and 10 deletions

View File

@ -15,6 +15,7 @@
pkgs = nixpkgs.legacyPackages.${system};
name = "scannedImageExtractor";
version = "0.2.7-beta";
in {
packages.${system} = {
default = let
@ -35,14 +36,14 @@
nativeBuildInputs = with pkgs; [
cmake
opencv2
opencv3
liblbfgs
qt5.full
libsForQt5.qt5.wrapQtAppsHook
];
configurePhase = ''
cmake scannerExtract -DCMAKE_BUILD_TYPE=release -DOPENCV2=1
cmake scannerExtract -DCMAKE_BUILD_TYPE=release
'';
buildPhase = ''
@ -57,7 +58,7 @@
# Install icons
for dimension in 128 256; do
install -m 444 $src/scannerExtract/ico/${name}''${dimension}x''${dimension}.png -D $out/share/icons/''${dimension}x''${dimension}/apps/${name}.png
install -m 444 $src/scannerExtract/ico/${name}''${dimension}x''${dimension}.png -D $out/share/icons/hicolor/''${dimension}x''${dimension}/apps/${name}.png
done
'';
};
@ -72,7 +73,7 @@
dontBuild = true;
installPhase = ''
install -m 555 $src -D $out/${name}.AppImage
install -m 555 $src -D $out/${name}-v${version}.AppImage
'';
};
};
@ -80,19 +81,25 @@
apps.${system} = {
appImage = {
program = "${pkgs.writeShellScript "scannedImageExtractor" ''
${pkgs.appimage-run}/bin/appimage-run ${self.packages.${system}.appImage}/${name}.AppImage
${pkgs.appimage-run}/bin/appimage-run ${self.packages.${system}.appImage}/${name}-v${version}.AppImage
''}";
type = "app";
};
};
devShells = {
overlays = {
default = final: prev: {
scanned-image-extractor = self.packages.${system}.default;
};
};
devShells.${system} = {
default = pkgs.mkShellNoCC {
packages = with pkgs; [
cmake
opencv2
opencv3
liblbfgs
gt5.full
qt5.full
appimage-run
];

View File

@ -194,14 +194,20 @@ void PreloadSource::getSumOfRectangleSampling(const QVector<cv::Point2f> pts,
sumValues = 0;
numPixels = 0;
IplImage tmp = image;
IplImage tmp = cvIplImage(image);
assert(image.type() == CV_8U);
for (int i=0; i<4; i++)
{
CvLineIterator iterator;
const int count = cvInitLineIterator( &tmp, pts[i], pts[(i+1)%4], &iterator, 4);
const int count = cvInitLineIterator(
&tmp,
cvPoint(cvRound(pts[i].x), cvRound(pts[i].y)),
cvPoint(cvRound(pts[(i + 1) % 4].x), cvRound(pts[(i + 1) % 4].y)),
&iterator,
4
);
for( int j = 0; j < count; j++ ){
sumValues += iterator.ptr[0];