Skip to content

Commit b175e96

Browse files
committed
markdown source builds
Auto-generated via {sandpaper} Source : b9bc009 Branch : main Author : Toby Hodges <tobyhodges@carpentries.org> Time : 2023-12-13 09:44:57 +0000 Message : Merge pull request #310 from bear-rsg/keeping-low-intensity-pixels Keeping low intensity pixels
1 parent 9cc0929 commit b175e96

File tree

2 files changed

+17
-10
lines changed

2 files changed

+17
-10
lines changed

03-skimage-images.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -379,39 +379,46 @@ The file `data/sudoku.png` is an RGB image of a sudoku puzzle:
379379

380380
![](data/sudoku.png){alt='Su-Do-Ku puzzle'}
381381

382-
Your task is to turn all of the bright pixels in the image to a
382+
Your task is to load the image in grayscale format and turn all of
383+
the bright pixels in the image to a
383384
light gray colour. In other words, mask the bright pixels that have
384385
a pixel value greater than, say, 192 and set their value to 192 (the
385386
value 192 is chosen here because it corresponds to 75% of the
386387
range 0-255 of an 8-bit pixel). The results should look like this:
387388

388389
![](fig/sudoku-gray.png){alt='Modified Su-Do-Ku puzzle'}
389390

390-
*Hint: this is an instance where it is helpful to load the image in grayscale format.*
391+
*Hint: the `cmap`, `vmin`, and `vmax` parameters of `matplotlib.pyplot.imshow`
392+
will be needed to display the modified image as desired. See the [Matplotlib
393+
documentation](https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.imshow.html)
394+
for more details on `cmap`, `vmin`, and `vmax`.*
391395

392396
::::::::::::::: solution
393397

394398
## Solution
395399

396-
First, load the image file `data/sudoku.png` as a grayscale image. Remember that we use `image = np.array(image)` to create a copy of the image array because `imageio.imread` returns a non-writeable image.
400+
First, load the image file `data/sudoku.png` as a grayscale image.
401+
Note we may want to create a copy of the image array to avoid modifying our original variable and
402+
also because `imageio.v3.imread` sometimes returns a non-writeable image.
397403

398404
```python
399-
400-
sudoku = iio.imread(uri="data/sudoku.png")
405+
sudoku = iio.imread(uri="data/sudoku.png", mode="L")
406+
sudoku_gray_background = np.array(sudoku)
401407
```
402408

403409
Then change all bright pixel values greater than 192 to 192:
404410

405411
```python
406-
sudoku = sudoku.copy()
407-
sudoku[sudoku > 125] = 125
412+
sudoku_gray_background[sudoku_gray_background > 192] = 192
408413
```
409414

410-
Finally, display the modified image. Note that we have to specify `vmin=0` and `vmax=255` as the range of the colorscale because it would otherwise automatically adjust to the new range 0-192.
415+
Finally, display the original and modified images side by side. Note that we have to specify `vmin=0` and `vmax=255` as the range of the colorscale because it would otherwise automatically adjust to the new range 0-192.
411416

412417
```python
413418
fig, ax = plt.subplots()
414-
plt.imshow(sudoku, cmap="gray", vmin=0, vmax=1)
419+
fig, ax = plt.subplots(ncols=2)
420+
ax[0].imshow(sudoku, cmap="gray", vmin=0, vmax=255)
421+
ax[1].imshow(sudoku_gray_background, cmap="gray", vmin=0, vmax=255)
415422
```
416423

417424
:::::::::::::::::::::::::

md5sum.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"index.md" "6e80c662708984307918adfad711e15f" "site/built/index.md" "2023-07-26"
66
"episodes/01-introduction.md" "9755639c515fdbf752422e2e59128f63" "site/built/01-introduction.md" "2023-07-26"
77
"episodes/02-image-basics.md" "b17ae758d5d8a2a81348306a97b37067" "site/built/02-image-basics.md" "2023-12-11"
8-
"episodes/03-skimage-images.md" "063fa4bb5032702c0196b0d953d94474" "site/built/03-skimage-images.md" "2023-12-08"
8+
"episodes/03-skimage-images.md" "e65a5d9bea4f5ee0597ac13cb0be875d" "site/built/03-skimage-images.md" "2023-12-13"
99
"episodes/04-drawing.md" "9d78a765f5e9747ffc2aa43a4a5a414d" "site/built/04-drawing.md" "2023-09-05"
1010
"episodes/05-creating-histograms.md" "59c07192c0a6217e8a42d3e7365025f9" "site/built/05-creating-histograms.md" "2023-12-08"
1111
"episodes/06-blurring.md" "8d109bb4c49f27f54857f6d35b4c6b9a" "site/built/06-blurring.md" "2023-12-08"

0 commit comments

Comments
 (0)