00:52:38 Heather Jones: https://kerriegeil.github.io/NMSU-USDA-ARS-AI-Workshops/ 01:04:20 Sri Pinnamaneni: Hi 01:04:21 Sri Pinnamaneni: How to access the current screen 01:04:39 Sri Pinnamaneni: The one you are explaining 01:04:42 Aaron Szczepanek: what was the keyboard shortcut the Run 01:04:44 Brian Stucky: Try exiting fullscreen view in zoom so you can see your other windows? 01:04:59 Brian Stucky: Run = shift + enter 01:05:13 Aaron Szczepanek: thx 01:24:45 Yanbo Huang: How can we share what you explained? 01:25:48 Peihua_UMD: can you share this jupyter notebook to us so we could run on our own 01:27:35 Heather Jones: https://kerriegeil.github.io/NMSU-USDA-ARS-AI-Workshops/learn/ scroll down to notebook if you still haven't found it. 01:28:38 Peihua_UMD: Great I find it, its a ipynb doc right? 01:28:56 Sean Kearney (USDA-ARS): FYI - I don't think I have a green check-mark. How about the thumbs-up symbol? (I just have clapping hands and thumbs up). 01:29:59 Heather Jones: There is a support room open right now that Brian can provide suppor tin 01:30:11 Heather Jones: yes 01:30:32 Peihua_UMD: https://drive.google.com/file/d/1qIQNoW0HIVgNz3XOh8KGzFXiuzyAS8dH/view?usp=sharing 01:30:34 Heather Jones: Sri and Huihui are currently in it 01:30:46 Daniel.Brabec: So, we are starting with image processing software >> "imageio". Have you tried to use ImageJ macros? 01:31:45 Peihua_UMD: I created a copy of code to google drive. If someone cannot find, please feel free to copy this on cloud. 01:32:29 Aaron Szczepanek: I noticed the ratio stays the same. is that default? 01:33:01 Aaron Szczepanek: for example: plt.figure(figsize=(50,20)) 01:33:53 Sean Kearney (USDA-ARS): FYI (again) - I found the green check mark under participants! (in case anyone else was looking for it - the thumbs up does not persist). 01:34:13 Daniel.Brabec: You mentioned a couple other imaging processing software; Would you comment on OpenCV and Pillow? 01:34:37 william meikle- USDA ARS: I'm sorry - I am having some issues here and won't be able to give you a green check just yet. I'm working on it, but may need to have someone send me an invitation to the Zoom on another email address... 01:44:34 Aaron Szczepanek: are multispectral photos 3d? I always get problems with the types 01:45:31 Aaron Szczepanek: ohhh RGB yes 01:45:45 Aaron Szczepanek: ok gotcha thx 01:49:07 Heather Jones: I will post to the site. 02:04:02 Tavis Anderson: The diagonal camera handle/black coat area of image. 02:04:30 Nishan Bhattarai: brighter pixels in the diagonal 02:04:55 Peihua_UMD: brighter pixels in the area 02:13:45 Daniel.Brabec: See some greens and blues. No red pixels. 02:14:08 Jonathan Shao: diagonal green yellow and blue 02:15:20 Jonathan Shao: outer area dark blue or purplish 02:15:35 Nishan Bhattarai: colormap 02:17:27 Nishan Bhattarai: or RGB I guess 02:18:14 Sri Pinnamaneni: Can you please repeat last step 02:19:16 Brian Stucky: @Sri - The key line is: 02:19:17 Brian Stucky: plt.imshow(I_camera) 02:19:29 Brian Stucky: Which displays the image without the grayscale colormap. 02:20:11 Sri Pinnamaneni: Got it thanks 02:20:12 Jonathan Shao: just zoomed in version 02:25:04 Tavis Anderson: Can you set thresholds? i.e., all pixels with value greater than 200 are colored by one color? 02:26:37 Peihua_UMD: If its possible to out put hex value from colormap? 02:27:45 Brian Stucky: I don't know for sure, either. 02:27:46 Alex Styer (he/him): Random but kind of fun—a new colormap from google called turbo that’s helpful for images where you’re trying to discern depth: https://ai.googleblog.com/2019/08/turbo-improved-rainbow-colormap-for.html 02:35:23 Aaron Szczepanek: cool! 02:37:48 25RS Serge Edme: what would be a conclusion analyzing this image? what was the goal? 02:40:09 Aaron Szczepanek: that turbo colormap 04:08:18 Sean Kearney (USDA-ARS): A gradient from blue-ish in the upper left to yellow-ish in the lower right 04:09:27 Roshan Kulkarni: Gradient from blue to green 04:09:40 WGMeikle: I think it's yellow on the lower right but more purple in the upper left 04:10:59 Nishan Bhattarai: yellow pepper with cyan on top 04:11:16 Jonathan Shao: red and blue with a little green should make purple (top left) 04:12:18 Jonathan Shao: or a shade of purple 04:12:48 Nishan Bhattarai: sorry ya purple on top 04:12:52 Aaron Szczepanek: top left green pepper 04:13:46 Jonathan Shao: yes green pepper yellow plus a little blue makes green 04:15:44 Aaron Szczepanek: is there a computation our computer does when it interprets the three colors? can it interpret 4 colors? or does it just tell out LEDs what intensity each RGB needs. 04:16:41 Brian Stucky: @Aaron, yes, RGB pretty much maps to the way computer displays work. Each pixel is a mix of those three components. 04:16:54 Brian Stucky: Not sure if that answers your question, though. 04:17:18 Aaron Szczepanek: yes that makes sense. so the output by the computer to the display will always be a mix of RGB 04:17:25 Brian Stucky: Right! 04:23:09 Aaron Szczepanek: I had thought there may be calculation to get a wavelength of the color. 04:24:47 Brian Stucky: Oh, right, that makes sense. The actual implementation, though, is just adding those three components. If you look at a single pixel on an LCD panel very closely (i.e., w/ a microscope), you can actually see the separate RGB outputs for each pixel. 04:27:02 Aaron Szczepanek: thanks! 04:28:45 Aaron Szczepanek: yes vegetative index 04:28:49 Nishan Bhattarai: thermal and shortwave infra red 04:29:06 Aaron Szczepanek: yea ndvi and others 04:29:07 Nishan Bhattarai: for water stress signals 04:29:27 Peihua_UMD: sensor array color with food sample 04:29:36 Sean Kearney (USDA-ARS): I do a lot of visualization of map products too - so outputs of models like biomass (single channel) or green vs. senesced vs. bare ground (RGB composite) 04:30:55 Peihua_UMD: also for food classification 04:38:47 Daniel.Brabec: Would you comment on Hue and Saturation index 04:40:30 Tavis Anderson: Is a pixel the same size in a 10x magnification png image and a 100x magnification png image? 04:42:40 Tavis Anderson: That does, thanks. 04:43:21 25RS Serge Edme: is it better to analyze grayscale image than color images? 04:44:05 Peihua_UMD: May I ask a question if someone knows. The image from SEM, scan electronic microscope, is a Grayscale image or a color image just showed black and white? 04:45:35 Peihua_UMD: ThankS! 05:03:09 Aaron Szczepanek: changed it to 0-1 ? 05:04:58 Sean Kearney (USDA-ARS): Changed to float64 datatype 05:05:39 Sean Kearney (USDA-ARS): ^^ which (ironically) tripled the object size compared to the RGB image 05:06:13 Aaron Szczepanek: and more elements? 05:13:07 Aaron Szczepanek: oh! haha 05:27:15 Jonathan Shao: 7 and 253 05:41:44 Brian Stucky: Sure, want to jump to the breakout room? 05:42:04 Brian Stucky: Sorry, all - that was meant for a PM. 05:42:15 Alex Styer (he/him): So the use of floats for color to grayscale transformations is to prevent loss of information when/if transforming back to color? 05:44:00 Alex Styer (he/him): Gotcha, thanks! 06:07:25 Tavis Anderson: Can you randomly sample via cropping and use each as an input into the model? 06:15:55 Peihua_UMD: I_pepper_gray_resize = skimage.transform.resize(I_pepper_gray,(300,100)) I_pepper_gray_resize = I_pepper_gray_resize[50:250] I_pepper_gray_resize = skimage.transform.resize(I_pepper_gray_resize,(256,256)) plt.imshow(I_pepper_gray_resize) 06:21:10 Scott Tsukuda: Apply square crop to the center of the original image and then resize from 384x384 to 256x256. 06:21:11 Scott Tsukuda: I_pepper_gray_crop = I_pepper_gray[0:384,64:448] I_pepper_gray_resize = skimage.transform.resize(I_pepper_gray_crop,(256,256)) 06:21:59 Sean Kearney (USDA-ARS): I think I took the same approach as Scott, but trying to make it universal to any image. Ended up a bit messy, but seems to work: min_dim = np.argmin(I_pepper.shape[:-1]) max_dim = np.argmax(I_pepper.shape[:-1]) if min_dim == 0: I_pepper_gray_crop = I_pepper_gray[:, I_pepper.shape[1]//2-I_pepper.shape[0]//2:I_pepper.shape[1]//2+I_pepper.shape[0]//2] else: I_pepper_gray_crop = I_pepper_gray[I_pepper.shape[0]//2-I_pepper.shape[1]//2:I_pepper.shape[0]//2+I_pepper.shape[1]//2, :] I_pepper_gray_resize = skimage.transform.resize(I_pepper_gray_crop,(256,256)) 06:22:02 Nishan Bhattarai: cropped snd resized 06:23:06 Alex Styer (he/him): Same, cropped first to try to best approximate the new aspect ratio while retaining as much of the objects of interest, then resized 06:37:21 Scott Tsukuda: #Start with I_camera_rgb, then resize to largest dimension, then change aspect ratio trimming off the top 50 px gray? 06:37:34 Scott Tsukuda: I_camera_rgb_resize = skimage.transform.resize(I_camera_rgb,(512,512)) I_camera_rgb_crop = I_camera_rgb_resize[50:434,0:512] 06:38:20 Peihua_UMD: I thought they are same, 06:38:33 Daniel.Brabec: We cropped the camera image first to match the aspect ratio, then we resized to 384x512. 06:39:04 Daniel.Brabec: Crop rows to 32:224. 06:39:05 Nishan Bhattarai: first resize and crop 07:05:47 Nishan Bhattarai: h2 filter yielded blurred image compared to h1, results to too much smoothening