image-ethics-and-data-integrity.md 10.3 KB
Newer Older
1
# Image data integrity
Christian Tischer's avatar
Christian Tischer committed
2

3
#### Prerequisites
Christian Tischer's avatar
Christian Tischer committed
4 5 6 7 8

- A computer with an image analysis software (e.g. [Fiji](www.fiji.sc)) already installed.
- Basic knowledge of how to use above software, e.g. 
    - open and save images
    - change image display settings
9
    - subtract a value from every pixel in an image
10
- Please download the training [material](https://git.embl.de/grp-bio-it/image-analysis-training-resources/-/archive/master/image-analysis-training-resources-master.zip) 
11
- Please make sure you can access to this [document](https://git.embl.de/grp-bio-it/image-analysis-training-resources/blob/master/workshops/image-ethics-and-data-integrity.md#image-ethics-and-data-integrity).
Christian Tischer's avatar
Christian Tischer committed
12 13

#### Duration
14 15 16

1.5 hours

Christian Tischer's avatar
Christian Tischer committed
17
#### Learn more about image data integrity
18 19 20

- http://www.imagedataintegrity.com/about.html
- http://jcb.rupress.org/content/166/1/11.full
21 22 23
- Douglas W. Cromey
	- Digital Images Are Data: And Should be Treated as Such
	- ...and follow up publications...
24

25
## Image data integrity
26 27 28 29 30 31 32 33 34 35 36 37 38

<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
    image_data_integrity -> image_content [label="  preserving"];
    image_content -> pixel_values;
    image_content -> pixel_coordinates;
    pixel_coordinates -> array_indices;
    pixel_coordinates -> physical_coordinates; 
 }
'/>


39 40
## Image data saving

41 42 43 44 45 46 47
<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
    saving_images -> image_content [label="  can change"];
  }
'/>

48 49
### Motivation

50
Sometimes it can be necessary to save your images in a different formats. 
Christian Tischer's avatar
Christian Tischer committed
51 52 53 54
It needs some training to know how to do this properly.

What could be good reasons to resave your data in a different format (multiple answers)?

55 56 57 58 59 60 61
1. I want to share my scientific findings on twitter, thus I need to convert an image to a twitter compatible format.
2. I want to import images in PowerPoint, only some formats will work.
3. I need to save disk space, thus I need to find a format that makes the images smaller.
4. I want to use a special software that only accepts certain image data formats.
5. The journal I want to publish in, only accepts certain image formats.
6. I want to have everything in Tiff format, because this is the standard.
7. My boss says that (s)he cannot open .lif (Leica) or .czi (Zeiss) images, thus I should save them in a different format.
Christian Tischer's avatar
Christian Tischer committed
62

63

64 65
### Activity: Save an image

66
- Open image: `xy_calibrated_16bit__cells_eres_noisy.tif`
67 68
- Note down the value and coordinate of the pixel at [218, 332]
- Save the image in **jpg** format
69
- Reopen the image
70
- Compare the value and coordinate of the pixel at [218, 332] to your notes, did it change?
71

Christian Tischer's avatar
Christian Tischer committed
72
Repeat above workflow, but 
73

74 75 76
- adjust the image display before saving 
- save as **png**
- open `xy_float__nuclei_probability.tif` and save as **png**
77

78
### Formative assessment
79

80 81
What can I do to preserve image integrity during image saving (multiple answers)?

82 83 84 85
1. I always save in Tiff format, this is safe.
2. I always check pixel values and coordinates before and after saving.
3. I ask my colleagues in the lab and do what they recommend..
4. I keep a copy of the raw data.
86

Christian Tischer's avatar
Christian Tischer committed
87 88

## Image display adjustment
89

Christian Tischer's avatar
Christian Tischer committed
90 91
### Motivation

92
Images are a collection of numbers. To visualise those numbers one needs to decide how to map them onto a color and a brightness. There is no default way of doing this. Thus one has be educated and thoughful about this topic. In fact, it is one of the great responsibilties of a microscopist to ajust the image display settings proplery.
93

94
### Image display concept map
95

Christian Tischer's avatar
Christian Tischer committed
96 97 98 99
<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
    image_content -> numbers [label="  contains"];
100
    numbers -> image_display [label="  lookup table (LUT)"];
Christian Tischer's avatar
Christian Tischer committed
101 102 103
  }
'/>

104 105 106
<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
107 108
    lookup_table_settings -> scientific_message [label="  affects"];;
    lookup_table_settings -> no_default;
109 110 111
  }
'/>

112
### Activity: Quantitative image display
113

114
- Open image: `xy_calibrated_16bit__nuclear_protein_control.tif`
115
    - This image shows a nuclear protein in control cells.   
116
- Open image: `xy_calibrated_16bit__nuclear_protein_treated.tif`
117 118 119
    - The cells in this image have been subjected to a drug.
- Inspect the images:
    - Did the drug affect the amount of the nuclear protein?
120
- Adjust the lookup-tables (LUTs) of both images to be the same
Christian Tischer's avatar
Christian Tischer committed
121
- Add a LUT calibration to both images 
122

123
### Formative Assessment
Christian Tischer's avatar
Christian Tischer committed
124

125
What helps to scientifically convey image intensity information (multiple answers)?
126

127 128 129 130
1. Adjust the LUT to the image's full bit-depth.
2. Add a LUT calibration bar.
3. Use the same LUT for images acquired with same settings..
4. Never change the LUT of images! Always keep as in raw data.
Christian Tischer's avatar
Christian Tischer committed
131 132 133

## High dynamic range image display

134 135 136
<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
137 138 139
    biological_images -> high_dynamic_range [label="  "];
    paper_reflectance -> low_dynamic_range [label="  "];
    computer_monitors -> low_dynamic_range [label="  "];
140 141 142
  }
'/>

143 144 145 146 147 148
### Motivation

The number range in images of biological samples can cover large ranges.
For example, a GFP tagged protein could occur in the same cell at different locations either 1 or 10000 times. This means that the dynamic range can be 10^4 or more. Due to limitations of image display and image preception such large dynamics ranges are difficult to display.


Christian Tischer's avatar
Christian Tischer committed
149 150 151
### Activity: High dynamic range image display

- Open image: `xy_16bit__nuclei_high_dynamic_range.tif`
152
- Try to adjust the grayscale LUT such that everything can be seen...
Christian Tischer's avatar
Christian Tischer committed
153
- Try finding other LUTs that help showing all data
154
- Add LUT calibration to image
Christian Tischer's avatar
Christian Tischer committed
155 156 157 158 159

### Formative Assessment

What can you do to show images with a high dynamic range (multiple answers)?

160 161
1. Adjust the LUT such that only the scientifically relevant information can be seen.
2. Adjust the LUT such that only the scientifically relevant information can be seen 
162 163
	* and state that the LUT has been adjusted in the figure legend
	* and show the same image with other LUT settings in the supplemental material.
164 165 166 167
3. Try to find a LUT that shows all data.
4. Never use multi color LUTs, they are confusing.
5. Already on the  microscope change the settings such that only relevant structures are visible, e.g. lower the gain such that dark irrelevant objects have zero pixel values.
6. Adjust LUT settings such that background noise is not visible, because this is distracting.
Christian Tischer's avatar
Christian Tischer committed
168
7. Add a LUT calibration to the image, such that readers can see that not all information might be visible.
Christian Tischer's avatar
Christian Tischer committed
169 170 171 172


## Image math

173 174 175 176 177 178 179 180 181
<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
    image_math -> pixel_values [label="  changes"];
    image_math -> pixel_data_type [label="  does not change"];
    image_math -> wrong_pixel_values [label = "  can yield"] 
  }
'/>

Christian Tischer's avatar
Christian Tischer committed
182 183
### Motivation

184 185
It sometimes is necessary to change numberic content of images. It is important to understand how to do this properly in order to avoid uncontrolled artifacts.

Christian Tischer's avatar
Christian Tischer committed
186 187
What are good reasons to change the pixel values in an image?

188 189 190 191 192 193
1. For intensity measurements, the image background (e.g. camera based offset) should be subtracted from all pixels.
2. For threshold based image segmentation (object detection), it helps to first filter noise in the image.
3. For intensity measurements, it helps to filter noise in the image.
4. The image appears to dark, multiplication of all pixels by a constant number is a means to make it brighter.
5. For uneven illumination (e.g. occuring in wide-field microscopy with large camera chips), one should do flat-field correction, which makes the intensity values even across the image.
6. Our microscope was broken. We took images on a replacement microscope. The pixel values were consistently higher than on our usual microscope. We multiplied the pixels on all images from the replacement microscope by a constant factor to make them comparable to our usual data.
194

Christian Tischer's avatar
Christian Tischer committed
195 196

### Activity: Perform pixel based background subtraction
197

198
- Open image: `xy_8bit__nuclei_noisy_different_intensity.tif`
Christian Tischer's avatar
Christian Tischer committed
199
- Appreciate the significant background intensity
200 201 202
- Measure pixel value at `[ 28, 35 ]` and `[ 28, 39 ]`
- Measure background intensity in below region:
	- upper left corner at `[ 20, 35 ]`
Christian Tischer's avatar
Christian Tischer committed
203 204 205
	- width = 10
	- height = 10 
- Subtract the measured background intensity from each pixel 
206
- Measure pixel values again at above coordinates ( `[ 28, 35 ]` and `[ 28, 39 ]` )
Christian Tischer's avatar
Christian Tischer committed
207
- Discuss how the pixel values changed during background subtraction
208

Christian Tischer's avatar
Christian Tischer committed
209
Repeat above activity, but:
210

211
- After opening the image, convert its pixel data type to floating point
212

Christian Tischer's avatar
Christian Tischer committed
213
### Formative Assessment
214

Christian Tischer's avatar
Christian Tischer committed
215 216
Considering image math operations, which of below statements is correct 
(multiple answers)?
217

218
1. Never change the pixel data type, because it violates image integrity.
219 220 221
2. Changing the pixel data type does not change pixel values.
3. It is scientifically unethical to perform mathematical operations on images, because it changes the pixel values.
4. When performing mathematical operations on images, it should be documented (e.g. by a script of code) 
222 223


Christian Tischer's avatar
Christian Tischer committed
224
## Display of 3-D images
225

226
Biological images are often 3D. However paper and monitors can only show 2D images. It is thus important to understand how to show 3D images in 2D without compromising the scientific message.
227 228 229 230

<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
Christian Tischer's avatar
Christian Tischer committed
231 232
    _3D_data -> visualisation [label="  multiple options"];
    visualisation -> scientific_message [label="  affects"];
233 234 235
  }
'/>

236

Christian Tischer's avatar
Christian Tischer committed
237 238 239 240 241 242 243
<img src='https://g.gravizo.com/svg?
 digraph G {
    shift [fontcolor=white,color=white];
    _3D_visualisation -> sum_projection;
    _3D_visualisation -> max_projection;
    _3D_visualisation -> slice_animation;
    _3D_visualisation -> slice_gallery;
244
    _3D_visualisation -> ...;
Christian Tischer's avatar
Christian Tischer committed
245 246
  }
'/>
247 248


Christian Tischer's avatar
Christian Tischer committed
249 250 251 252 253 254 255 256 257
### Activity: Explore 3D visualisations

- Open image: `xyzt_calibrated_16bit__golgi_bfa.zip`
- Explore and discuss different options how to present this data
    - slice gallery
    - sum projection
    - max projection
    - slice animation

258
### Formative Assessment
259

Christian Tischer's avatar
Christian Tischer committed
260 261
Which statements about visualisation and quantification of 3D images are correct (multiple answers)?

262 263
1. Always use maximum intensity projection, it is by far the most commonly used.
2. Any visualisation can make sense, you just have scientifically justify it.
264 265
3. Intensity quanitifcations ideally should be done in 3D, not in projections.
4. It is impossible to quantify intensities in projections.
266