|
|
@@ -1,3 +1,4 @@
|
|
|
+import os
|
|
|
import time
|
|
|
import threading
|
|
|
|
|
|
@@ -9,10 +10,6 @@ from pyorbbecsdk import *
|
|
|
|
|
|
ESC_KEY = 27
|
|
|
PRINT_INTERVAL = 1 # seconds
|
|
|
-MIN_DEPTH = 500 # mm
|
|
|
-MAX_DEPTH = 4000 # mm
|
|
|
-ROI_WIDTH_CM = 10.0 # cm
|
|
|
-ROI_HEIGHT_CM = 12.0 # cm
|
|
|
MEDIAN_BLUR_KSIZE = 5 # odd number, 0 to disable
|
|
|
MORPH_OPEN_KSIZE = 3 # odd number, 0 to disable
|
|
|
NEAREST_PERCENTILE = 5 # use low percentile to suppress isolated noise (0 for raw min)
|
|
|
@@ -21,6 +18,20 @@ SAMPLE_COUNT = 10
|
|
|
FRAME_TIMEOUT_MS = 200
|
|
|
SAMPLE_TIMEOUT_SEC = 8
|
|
|
|
|
|
+def _get_env_int(name, default):
|
|
|
+ value = os.getenv(name)
|
|
|
+ if value is None or value.strip() == "":
|
|
|
+ return default
|
|
|
+ try:
|
|
|
+ return int(value)
|
|
|
+ except ValueError:
|
|
|
+ return default
|
|
|
+
|
|
|
+MIN_DEPTH = _get_env_int("MIN_DEPTH", 500) # mm
|
|
|
+MAX_DEPTH = _get_env_int("MAX_DEPTH", 4000) # mm
|
|
|
+ROI_WIDTH_CM = _get_env_int("ROI_WIDTH_CM", 10) # cm
|
|
|
+ROI_HEIGHT_CM = _get_env_int("ROI_HEIGHT_CM", 12) # cm
|
|
|
+
|
|
|
app = FastAPI(title="Cargo Height API")
|
|
|
|
|
|
|