Facebook
From Red Camel, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 150
  1. Szanowni Państwo,
  2.  
  3. Link do jednego z(e wspomnianych) artykułów, traktującego o widzeniu w ciemności: https://royalsocietypublishing.org/doi/10.1098/rstb.2016.0065
  4.  
  5. I zadanie laboratoryjne:
  6.  
  7. 1. Na podstawie wybranego obrazu (np: https://github.com/Bahrd/AppliedPythonology/blob/master/MBA.png) wygenerować sekwencje obrazów zawierających piksele o rozkładzie Poissona (np. posługując się załączonym niżej skryptem)
  8. 2. Dla każdego z kilku wybranych poziomów intensywności (w szczególności dla obrazów binarnych)
  9.     * stworzyć z tych obrazów sekwencje wideo i subiektywnie ocenić możliwość rozpoznawania kształtów względem pojedynczych obrazów (np. możne przeprowadzić ten eksperyment na członkach rodziny i domowych zwierzętach).
  10.     * złożyć obrazy w jeden i ponownie ocenić możliwość rozpoznawania kształtów/krawędzi/etc.
  11. 3. Podziękować uczestnikom eksperymentu.
  12. 4. Wyciągnąć (wspólnie z nimi?) wnioski.
  13.  
  14. P. Śliwiński
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21. ---------------------------------------------------------------------------------
  22. %% Almost plain vanila example of GUI's slider usage
  23. f = figure;
  24. p = uipanel(f, 'Position',[.05, .05 .2 .15]);
  25.  
  26. c = uicontrol(p,'Style','slider');
  27. c.Value = 0.5;
  28. c.Callback = @sliderMovement;
  29.  
  30. %% Some select warning suppression
  31. warning('off', 'images:imshow:magnificationMustBeFitForDockedFigure');
  32. warning('off', 'images:initSize:adjustingMag');
  33.  
  34. %% Parameter globalisation (for the sake of passing them to slider's handler convenience)
  35. setappdata(0, 'img', imresize(imread('.\images\MBA.jpg'), .125));
  36.  
  37. function sliderMovement(src, ~)
  38.   val = src.Value;
  39.   disp(['Selection: ' num2str(val)]);
  40.  
  41.   %% Exemplary activity - here, image Poissoning
  42.   EV = -8 * (val - .5);
  43.   N = 2^EV;
  44.   img = getappdata(0, 'img');
  45.   Y = poissrnd(double(img) * N);
  46.   Y = uint8(Y / N);  % re-normalization  
  47.   imshow(Y);
  48. end