Python 创建一个由两个区域组成的图像,两个区域的平均值相同,但差异不同

Python 创建一个由两个区域组成的图像,两个区域的平均值相同,但差异不同,python,numpy,image-processing,image-segmentation,Python,Numpy,Image Processing,Image Segmentation,我们如何在python中创建由两个区域组成的图像,这两个区域具有相同的平均值,但具有不同的方差(使用正常法则的实现创建的区域的强度) 我找到了这个小代码,但我不知道它是否真的是这样: I = np.random.normal (128,10, (256, 256)); Icentre = np.random.normal (128,50, (80, 80)) I [100: 180,100: 180] = Icentre; 我正在进行全变差分割,所以第二部分是制作一个与图像大小完

我们如何在python中创建由两个区域组成的图像,这两个区域具有相同的平均值,但具有不同的方差(使用正常法则的实现创建的区域的强度)

我找到了这个小代码,但我不知道它是否真的是这样:

  I = np.random.normal (128,10, (256, 256)); 
  Icentre = np.random.normal (128,50, (80, 80))
  I [100: 180,100: 180] = Icentre;

我正在进行全变差分割,所以第二部分是制作一个与图像大小完全对应的掩模m,然后用该图像测试分割过程。有两个选项,一个是将两个图像连接在一起。例如:

import numpy as np

im1 = np.random.normal(128, 10, (256, 256)) #mean of 128, std of 10
im2 = np.random.normal(128, 6, (256, 256)) #mean of 128, std of 6

# create image from both regions, shape = (512, 256)
img = np.concatenate((im1, im2))
在本例中,行0-255的平均值为128,std为10,而行256-512的平均值为128,std为6


您上面发布的代码也可以使用。在这种情况下,您正在将
Icentre
插入
I
中,从
row=100
col=100
开始,到
row=180
col=180
结束

非常感谢这就是我要找的,你是说np.concatenat((im1,im2))很酷,很乐意帮忙。