グレースケール画像の輝度値のみを変更する方法

16 visualizaciones (últimos 30 días)
Natsumi Nakatani
Natsumi Nakatani el 17 de En. de 2020
Comentada: Natsumi Nakatani el 20 de En. de 2020
グレースケールに変換した画像の輝度値をある式(例えば、y=2X+1)に投入し、算出したyの値に変換した画像を作りたいと思っています。
変更範囲は画像全体の場合と特定の箇所(複数のピクセル)の場合の2パターンを考えています。
どのようにしたら良いでしょうか。ご回答いただけると幸いです。

Respuesta aceptada

Kenta
Kenta el 17 de En. de 2020
こんにちは、画像の変数Iも行列と同様に、.*(ドットと掛け算)を用いて各要素をそのまま掛け算できます。
ある場所にしたかったら、下のような書き方をすれば範囲を指定できるので、同様にすれば指定の範囲だけ計算できます。
imtool(対象画像の変数名)でピクセルの情報などが読めるので、それを利用して位置を定めてもよいかもしれません。
result.PNG
clear;clc
I=imread('onion.png');
I2=I.*2+1;
figure;imshow(I2)
imtool(I)
I3=I;
h1=50;
h2=100;
w1=30;
w2=90;
I3(h1:h2,w1:w2,:)=I3(h1:h2,w1:w2,:).*2+1;
figure;imshow(I3)
  3 comentarios
Kenta
Kenta el 20 de En. de 2020
参考になり、よかったです。arrayfunを使えばできます。
例えば以下のようです。
result.PNG
a=randi(10,[3 3])
disp('各ピクセルの値をxとすると、2のx乗+1の値を計算')
b=arrayfun(@(x) 2^x+1, a)
Natsumi Nakatani
Natsumi Nakatani el 20 de En. de 2020
早速ご回答いただきありがとうございます。おかげ様でできました。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre イメージ ビューアー アプリを使用した対話型調査 en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!