-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Verify HSV-Values of load_image()
for rootarea & determine a method of discriminating against the background
#24
Comments
However, confusingly myrapla does exactly the same. It calls, in order from top to bottom: data.process_file() (app.py)
image = cv2.imread(file.as_posix()) (data.process_file)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
processing.mask_rgb_image() (data.py), with bounds `helpers.HSV_MASK_BOUNDS[plant_color_key]["lower"],helpers.HSV_MASK_BOUNDS[plant_color_key]["upper"]`
image_in_color_space_of_bounds = cv2.cvtColor(rgb_image, cv2.COLOR_RGB2HSV) (mask_rgb_image)
mask = cv2.inRange(
image_in_color_space_of_bounds,
lower_bound.representation,
upper_bound.representation,
)
processing.process_mask(mask,erode_iter,dilate_iter) with iterations = 0/0, so we don't care abt this
return all the way to app.py
retrieve the largest contour only which, verbose, is the following:
SO::: The only viable reason for why myrapla gets much fewer hits is that it checks all three elements of an HSV-pixel. I can only validate elements |
Which leaves the question of... can I validate that the V-component is valid, so that I can define viable thresholds for it and read it in? |
We could reintroduce the This means: Prepare a 20x20 pixelset with following quadrants
And check what the value-plane displays for them. There must be a significant gap between foreground and background pixels before we can consider re-introducing |
Root-area: Current best seems to be spectrums <- list(
lower_bound = list(
bex_root_HSV = c(21.80, 0.30, 0.0099)
, bex_identifier_dot = c(270, 0.2, 0.0099)
),
upper_bound = list(
bex_root_HSV = c(52,0.8,0.9)
, bex_identifier_dot = c(359, 1, 1)
)
) However, this is still not perfect:
|
Currently, the background can not be discriminated against well in case of root-analysis
Reasons for this:
Well, the "uniform black" background currently used is a lot, but not black. and not uniform.
I actually don't really know how myrapla actually managed to do this, cuz so far it seems... optimistic.
The text was updated successfully, but these errors were encountered: