使用 matlab 打乱图像

发布于 2024-10-27 10:58:18 字数 81 浏览 1 评论 0原文

例如,我的屏幕尺寸为 1024x768。而且,我的每张图像都是 150 x 250,总共有 4 张图像。如何随机化这些图像以显示在屏幕上的不同位置?

For instance, I have a screen size of 1024x768. And, each of my image is 150 x 250, where I have 4 images in total. How can i randomize these images to appear at different positions on the screen?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

相守太难 2024-11-03 10:58:18

你到底想要什么?
是:

  • 保留 4 个预定义的空白位置,并将 4 个图像中的每一个随机分配到一个空白位置,
  • 还是简单地将它们随机放置在屏幕上?

这个想法是显示图像并保留每个图形对象(H1、H2、H3、H4)的句柄。理想的情况是将它们存储在句柄列表 H 中。
对于第一个想法,将每个空位的左上角位置存储在 4 个条目列表 POS 中。
创建连接列表 LC,其中 LC[i]=j 返回 POS 中的索引,在其中查找句柄 H[i] 的位置。
例如,如果 LC = [1 2 3 4] 句柄 H1 被分配到位置 POS1< /a>、H2 到 POS[2] 等...
然后使用 randperm() (
mathworks.com/help/techdoc/ref/randperm.html) 正如 Ashish 在 LC 清单上指出的那样。这将随机“混合”连接列表,从而重新排列位置。
最后,设置每个手柄的位置:

set(H[i], 'Position', [POS(LC[i],1) POS(LC[i],2) SizeX SizeY]); 

其中SizeX和SizeY是图形对象与屏幕之间的尺寸比例。

What do you want exactly?
Is it to:

  • keep 4 predefined empty places and assign each of the 4 image to one empty place randomly,
  • or simply place them randomly on the screen?

The idea is to display the images and keep the handle of each figure object (H1, H2, H3, H4). The ideal would be to store them in a handle list H.
For the first idea, store the top-left corner position of each empty place in a 4 entries list POS.
Make a connectivity list LC where LC[i]=j returns the index in POS where to find the position of the handle H[i].
For example, if LC = [1 2 3 4] handle H1 is assigned to position POS1, H2 to POS[2], etc...
Then use randperm() (mathworks.com/help/techdoc/ref/randperm.html) as Ashish pointed out on the LC list. This will randomly "mix" the connectivity list, and hence shuffle the positions.
Finally, set the position of each handle:

set(H[i], 'Position', [POS(LC[i],1) POS(LC[i],2) SizeX SizeY]); 

Where SizeX and SizeY are the size ratios between the figure object and the screen.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文