你怎么在照片将随机选择一个灰色酒吧白色?

1视图(30天)
我有任务随机选择酒吧的目标刺激试验灰色酒吧。酒吧到目前为止是表示的代码。然而,在白色的酒吧。最后,我要有两个图片:一个黑色背景和16个灰色酒吧和另一个只有一个随机选择的酒吧白色。
有人能帮我如何随机选择的一个酒吧变成白色?
照片= 0 (500500);
照片(100年,96:104)= 100;
照片(200年,96:104)= 100;
照片(300年,96:104)= 100;
照片(400年,96:104)= 100;
照片(100196:204)= 100;
照片(200196:204)= 100;
照片(300196:204)= 100;
照片(400196:204)= 100;
照片(100296:304)= 100;
照片(200296:304)= 100;
照片(300296:304)= 100;
照片(400296:304)= 100;
照片(100396:404)= 100;
照片(200396:404)= 100;
照片(300396:404)= 100;
照片(400396:404)= 100;
%保存为图片
imwrite(图片,“stimulusimage.tiff”,“饮”)
%替代一个随机白色条颜色? ? ? ?
x =图片= = 100;
y =长度(x) = = 9;% = 9,因为我认为当x的长度9 * 1(1 1 1 1 1 1 1 1 1)代表一个灰色酒吧
照片(y) = 255;
%保存为图片
imwrite(图片,“stimulusimagewithwhitebar.tiff”,“饮”)

接受的答案

亚当Danz
亚当Danz 2020年1月26日
编辑:亚当Danz 2020年1月27日
对于灰度图像, imwrite () 假设第一个输入的动态范围是[0,1],并自动255年尺度的数据写到文件之前8位值。
灰色= 100/255;
照片= 0 (500500);
照片(100年,96:104)=灰色;
照片(200年,96:104)=灰色;
%等....
图像中随机选择一个酒吧和改变它的颜色设置为白色,你可以使用 bwlabel (需要图像处理工具箱)来识别bar-groups,然后随机选择一个,改变它的值为1。
%组织价值观
bwl = bwlabel(图片> 0);
%选择一个随机的部分
randSection =兰迪(max (bwl (:)), 1, 1);
%设置栏为白色
照片(bwl = = randSection) = 1;
%显示图像
imshow(图)%,或者在你的情况下,imwrite (…)

更多的答案(2)

Stijn Haenen
Stijn Haenen 2020年1月26日
这是最有可能不是最好的办法,但工作原理:
照片= 0 (50,50);
照片(10日10:12)= 100;
照片(20日10:12)= 100;
照片(30日10:12)= 100;
照片(40,十12)= 100;
照片(10日20:22)= 100;
照片(20日20:22)= 100;
照片(30日20:22)= 100;
照片(40,20:22)= 100;
30:32照片(10日)= 100;
30:32图片(20日)= 100;
30:32图片(30日)= 100;
照片(40,30:32)= 100;
30:32照片(10日)= 100;
30:32图片(20日)= 100;
30:32图片(30日)= 100;
照片(40,30:32)= 100;
%保存为图片
% imwrite(图片,“stimulusimage.tiff”,“tiff”)
%替代一个随机白色条颜色? ? ? ?
显示亮度图像(图)
(x, y) =找到(图片= = 100);
x0 = datasample (x, 1);
y0 = datasample (y, 1);
照片(x0-3: x0 + 3, y0-3: y0 + 3) =图片(x0-3: x0 + 3, y0-3: y0 + 3) * 2.5;
图()
显示亮度图像(图)

伊芙琳Kallenberg
伊芙琳Kallenberg 2020年1月29日
谢谢你的帮助。
我最终做了这种方式,因为我认为这是一个有些不同。
照片= 0 (500500);
x = (100 100 100 100 200 200 200 200 300 300 300 300 400 400 400 400];
y = (100 200 300 400 100 200 300 400 100 200 300 400 100 200 300 400];
i = 1:16
照片(x(我),y (i) 4: y (i) + 4) = 100;
结束
%保存为图片
imwrite(图片,“stimulusimage.tiff”,“饮”)
%随机酒吧脸色发白
randNumber =兰迪(16);
照片(x (randNumber), y (randNumber) 4: y (randNumber) + 4) = 255;
%保存为图片
imwrite(图片,“stimulusimagewithwhitebar.tiff”,“饮”)
%随机变黑
randNumber =兰迪(16);
照片(x (randNumber), y (randNumber) 4: y (randNumber) + 4) = 0;
%保存为图片
imwrite(图片,“stimulusimagewithblackbar.tiff”,“饮”)
2的评论

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!