[問題] skimage.io.imread()讀圖檔底色是黃色?

看板Python作者 (希望大家開心)時間1周前 (2025/12/28 06:19), 1周前編輯推噓0(0011)
留言11則, 2人參與, 1周前最新討論串1/1
為瞭解slicing的color channels是怎麼回事,最簡單的方法就是先製作一張有RGB三色的圖片: https://i.meee.com.tw/33EcphL.jpg
再用skimage.io.imread()圖檔後,應該就能過濾掉紅、綠、藍色。結果發現: from skimage.io import imread, imsave img = imread('fig.jpg') test = img[:, :, 0] plt.imshow(test) https://i.meee.com.tw/kfJN1cK.png
紅色確實被濾掉了,但是怎麼底色和紅色方塊都變成黃色? (圖片背景色確定為白色而非透明) 有辦法套用紅色濾鏡並去掉黃色底色嗎? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.43.127.80 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1766873948.A.82D.html ※ 編輯: dosiris (114.43.127.80 臺灣), 12/28/2025 09:37:13

12/28 20:34, 1周前 , 1F
因為他預設的 colormap (cmap) 是 viridis,所以過濾後就是
12/28 20:34, 1F

12/28 20:34, 1周前 , 2F
亮黃色,你該指定改用 gray 的 cmap。
12/28 20:34, 2F

12/28 20:34, 1周前 , 3F
關鍵字有給你了,要找到怎麼處理應該不難
12/28 20:34, 3F

12/29 06:37, 1周前 , 4F
謝謝! plt.imshow(test, cmap='gray') 確實就紅色塊和底
12/29 06:37, 4F

12/29 06:38, 1周前 , 5F
色正確變白 只是藍綠色塊也變灰階 我再試試其他cmap能否
12/29 06:38, 5F

12/29 06:39, 1周前 , 6F
讓藍綠色塊正確顯色
12/29 06:39, 6F

12/29 14:50, 1周前 , 7F
不是... 你的 source code 會讓 test 變成一個二維的陣列
12/29 14:50, 7F

12/29 14:50, 1周前 , 8F
他本來就是灰階的...
12/29 14:50, 8F

12/29 14:54, 1周前 , 9F
如果你要的是 "套紅色濾鏡" 類似紅色玻璃紙的效果,應該用
12/29 14:54, 9F

12/29 14:54, 1周前 , 10F
img[:, :, 0] = 255 這邊的 0 是 R 通道
12/29 14:54, 10F

12/29 16:52, 1周前 , 11F
瞭解 謝謝分享
12/29 16:52, 11F
文章代碼(AID): #1fK5jSWj (Python)
文章代碼(AID): #1fK5jSWj (Python)