Initial commit: Speckle-Scanner 3D pipeline with setup README

This commit is contained in:
2026-06-10 03:09:05 +05:00
commit 1765934846
375 changed files with 123081 additions and 0 deletions
@@ -0,0 +1,82 @@
from typing import List, Tuple
import cv2
import numpy as np
class Preprocessing:
"""Preprocessing class.
Parameters
----------
clipLimit: float
default = 5.0
tileGridSize: Tuple[int, int]
default = (15, 15)
thresh1: int
default = 0
thresh2: int
default = 255
"""
def __init__(
self,
tileGridSize: Tuple[int, int] = (15, 15),
clipLimit: float = 5.0,
thresh1: int = 0,
thresh2: int = 255,
) -> None:
self.tileGridSize = tileGridSize
self.clipLimit = clipLimit
self.thresh1 = thresh1
self.thresh2 = thresh2
def gray(self, image: np.ndarray) -> np.ndarray:
"""Convert to GRAY for a given image.
Parameters
----------
image : np.ndarray
image of chessboard
Returns
-------
np.ndarray
image of chessboard converted to GRAY
"""
gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
return gray
def clahe(self, image: np.ndarray) -> np.ndarray:
"""Apply Clahe to GRAY Shimage.
Parameters
----------
image : np.ndarray
image of chessboard
Returns
-------
np.ndarray
image of chessboard converted to GRAY and applied CLAHE
"""
clahe = cv2.createCLAHE(clipLimit = self.clipLimit, tileGridSize = self.tileGridSize)
clahed = clahe.apply(self.gray(image))
return clahed
def threshold(self, image: np.ndarray) -> np.ndarray:
"""Apply Clahe to GRAY Shimage.
Parameters
----------
image : np.ndarray
image of chessboard
Returns
-------
np.ndarray
image of chessboard converted to GRAY applied CLAHE and applied THRESHOLD
"""
criteria = cv2.THRESH_BINARY + cv2.THRESH_OTSU+1
ret, threshold = cv2.threshold(self.clahe(image), self.thresh1, self.thresh2, criteria)
return threshold