Skip to content

Commit

Permalink
refactor: Update read_spectral_images function to accept custom image…
Browse files Browse the repository at this point in the history
…s directory
  • Loading branch information
janezlapajne committed Sep 8, 2024
1 parent 34a33e7 commit 0c29e7b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 4 deletions.
8 changes: 6 additions & 2 deletions source/helpers/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,13 @@
from source.core import logger, settings


def read_spectral_images() -> tuple[list[SpectralImage], list[SpectralImage]]:
def read_spectral_images(
images_dir: Path | str | None = None,
) -> tuple[list[SpectralImage], list[SpectralImage]]:
if images_dir is None:
images_dir = settings.images_dir
file_paths = sorted(
[Path(file) for file in Path(settings.images_dir).glob("*") if file.is_file()]
[Path(file) for file in Path(images_dir).glob("*") if file.is_file()]
)

header_paths = [
Expand Down
15 changes: 13 additions & 2 deletions source/processing/segmentator.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,26 +90,37 @@ def save_segmented_images(
):
filename_cam1 = image_cam1.filepath.stem
filename_cam2 = image_cam2.filepath.stem
meta_keys_to_extract = [
"description",
"data type",
"data ignore value",
"interleave",
"default bands",
"byte order",
"wavelength",
]

logger.info("Saving segmented images for Camera 1 ...")
metadata_cam1 = {key: image_cam1.metadata[key] for key in meta_keys_to_extract}
for idx, area in enumerate(selected_areas_cam1):
filename_widx = (
f"{index}{settings.labels_between_deliminator}"
f"{idx}{settings.labels_part_deliminator}"
f"{filename_cam1}.hdr"
)
subarray = image_cam1.to_subarray(area)
save_spectral_image(subarray, filename_widx)
save_spectral_image(subarray, filename_widx, metadata_cam1)

logger.info("Saving segmented images for Camera 2 ...")
metadata_cam2 = {key: image_cam2.metadata[key] for key in meta_keys_to_extract}
for idx, area in enumerate(selected_areas_cam2):
filename_widx = (
f"{index}{settings.labels_between_deliminator}"
f"{idx}{settings.labels_part_deliminator}"
f"{filename_cam2}.hdr"
)
subarray = image_cam2.to_subarray(area)
save_spectral_image(subarray, filename_widx)
save_spectral_image(subarray, filename_widx, metadata_cam2)


def perform_segmentation(
Expand Down

0 comments on commit 0c29e7b

Please sign in to comment.