add splitter
This commit is contained in:
parent
01dbaf6eae
commit
2ad17cb795
|
@ -0,0 +1,35 @@
|
||||||
|
#! /usr/bin/env python3
|
||||||
|
import pathlib
|
||||||
|
import subprocess
|
||||||
|
import argparse
|
||||||
|
from multiprocessing import Pool
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
parser = argparse.ArgumentParser("Batch crop standard sized images")
|
||||||
|
parser.add_argument("indir", type=pathlib.Path)
|
||||||
|
parser.add_argument("outdir", type=pathlib.Path)
|
||||||
|
|
||||||
|
args = parser.parse_args()
|
||||||
|
args.outdir.mkdir(exist_ok=True)
|
||||||
|
|
||||||
|
def convert_file(infile: pathlib.Path):
|
||||||
|
print(f"Splitting {infile}")
|
||||||
|
newf = args.outdir.joinpath(infile.stem)
|
||||||
|
|
||||||
|
subprocess.run(
|
||||||
|
[
|
||||||
|
"convert",
|
||||||
|
str(infile),
|
||||||
|
"+repage",
|
||||||
|
"-crop",
|
||||||
|
"2x2@",
|
||||||
|
"+repage",
|
||||||
|
f"{newf}_%d.png",
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
with Pool() as pool:
|
||||||
|
print("Splitting images")
|
||||||
|
for _ in pool.imap_unordered(convert_file, args.indir.iterdir(), chunksize=1):
|
||||||
|
pass
|
|
@ -606,7 +606,7 @@ fn main() {
|
||||||
active_resolution
|
active_resolution
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
// option.set_int(&mut 300).unwrap();
|
option.set_int(&mut 600).unwrap();
|
||||||
let active_resolution = option.get_int().unwrap();
|
let active_resolution = option.get_int().unwrap();
|
||||||
let resolutions = option.int_constraints().unwrap();
|
let resolutions = option.int_constraints().unwrap();
|
||||||
print!("\t\t");
|
print!("\t\t");
|
||||||
|
@ -648,6 +648,7 @@ fn main() {
|
||||||
break 'image_loop;
|
break 'image_loop;
|
||||||
}
|
}
|
||||||
if scanbutton.get_bool().unwrap() {
|
if scanbutton.get_bool().unwrap() {
|
||||||
|
println!("SCANNING...");
|
||||||
break 'button_loop;
|
break 'button_loop;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -658,12 +659,13 @@ fn main() {
|
||||||
let since_unix = now.duration_since(std::time::UNIX_EPOCH).unwrap();
|
let since_unix = now.duration_since(std::time::UNIX_EPOCH).unwrap();
|
||||||
|
|
||||||
let mut imagepath = dir.join(format!(
|
let mut imagepath = dir.join(format!(
|
||||||
"plate_{}:{}.png",
|
"plate_{}_{}.png",
|
||||||
since_unix.as_secs(),
|
since_unix.as_secs(),
|
||||||
since_unix.subsec_millis()
|
since_unix.subsec_millis()
|
||||||
));
|
));
|
||||||
assert!(!imagepath.exists());
|
assert!(!imagepath.exists());
|
||||||
|
|
||||||
|
println!("SAVING IMAGE...");
|
||||||
image.save(imagepath).unwrap();
|
image.save(imagepath).unwrap();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue