-
Notifications
You must be signed in to change notification settings - Fork 20
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
Cannot process through Lyzenga 2006 method #4
Comments
It's hard to say for sure what the problem is, but here's my best guess. I think that all of the training pixels are getting masked. That If that does work and get you results, then I'm guessing that maybe you're working in temperate waters? There's something that's been called "over deduction" in the literature. I tried to address it in the data preprocessing section and the discussion of my depth estimation paper. It's difficult to explain clearly, but it's basically just that really dark bottom types cause the Lyzenga method to try to take the log of negative numbers. Where that happens, my code masks out those pixels. If too many pixels got masked, your error could be the result. I had to use a Please let me know if |
Thank you for the direction. I'll keep pushing on it. My preliminary results for KNN for the waters off Okinawa (Motobu region) have been very, very good. My colleagues here have used Lyzenga processed through a different method that was not very convincing. |
That's great to hear. Please keep me posted. Also, if you're interested in habitat mapping, please check out my thesis. I intend to get a couple more publications out that'll put that work into a more concise format, but I've been too busy to make much progress. There's a lot more in OpticalRS than depth estimation. |
I was able to get the KNN process to work through DepthEstimator
de = DepthEstimator('Input_Image', 'Depth_raster') depth = de.knn_depth_estimation(k=5)
however, the same process for Lyzenga
lyzdepth = de.lyzenga_depth_estimation()
fails eventually at Lyzenga2006.get_selfscore()
I've tracked it though to:
Lyzenga2006.py line 95:
x_train = x_train.compressed().reshape(-1,nbands)
The above code takes my image array (x_train) which is a (x_train.shape==(7004,6199,8)) Woldview 2/3 image, and turns it into a (0,8) array, which then throws the error:
ValueError: Found array with a 0 sample(s) (shape=(0, 2)) while a minimum of 1 is required
when run through this line:
fit = get_fit( ind, x_train, y_train, n_jobs=njobs )
I'm not really sure what shape things should be in to get through this process, can you give me any tips?
There is a similar array shape problem in the Lyzenga Guide for X
full_pred = skolsfit.predict( X[...,best_ind] )
so I was hoping the above process would garner more success.The text was updated successfully, but these errors were encountered: