【元胞自动机】基于元胞自动机模拟地区未来的城市增长附Matlab代码

简介: 【元胞自动机】基于元胞自动机模拟地区未来的城市增长附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信      无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机

⛄ 内容介绍

城市空间形态是从空间的角度研究城市演化的状态,形式及其相关影响因素.自改革开放以来,随着国民经济的高速发展,中国城市进入了快速发展时期,作为城市化发展的直接结果,城市空间形态也发生着相应的剧烈变化. 城市空间形态演化过程具有高度的复杂性,元胞自动机作为一种时间和空间上都离散的系统动力学模型,充分体现了"简单子系统可相互组合形成复杂巨系统"的精髓,特别适用于模拟具有复杂时间和空间特征的地理系统,已逐渐成为研究城市空间形态的一种重要工具或手段.

⛄ 部分代码

clear all ; close all; clc;

% 0 means Restricted ... 35 means road... 50 means built up... 15 means Non  built up


%%%Initilizing


img = imread('test.jpg');

%image(img);

[sr sc sf] = size(img);

ar = zeros(sr,sc);

for i=1:sr

   for j=1:sc

     if(img(i,j,1) >240 )

         ar(i,j)=15;

     else if (img(i,j,1)<150)

             ar(i,j)=50;

         else

             ar(i,j)=35;

         end

     end

     

     if img(i,j,2)>90 && ar(i,j)~=15

         ar(i,j) = 0;

     end

     

   end

end

colorMap = jet(50);

colormap(colorMap);

image(ar)

colorbar

%%%% calculating nearest distence from road..





dis = zeros(sr,sc) ;

for i=1:sr

   for j=1:sc

%         if(ar(i,j)==25)

%             dis(i,j)=0;

%         end

       d=1e6;

               for x=1:sr

                   for y=1:sc

                      if(ar(x,y)==35)

                         

                          % Euclidian

                         %  tm = ((i-x)^2 + (j-y)^2)^0.5 ;

                         

                         % Non Euclidian

                           tm = max ( abs(i-x) , abs(j-y) ) ;

                         

                          if tm<d

                              d=tm;

                          end

                      end

                   end

               end

               dis(i,j)=d;

   end

end

figure;

image(dis*2)

colorbar;


%%% now The Cellular Autometa as per rules....



 pause(1);

 figure

   image(ar);

   hold on;

   figure

    image(ar);

% 0 means Restricted ... 35 means road... 50 means built up... 15 means Non  built up

p = ( 1 - (dis/ max ( max ( dis )  ) ) )  / 2;


itr = 10;


for t=1:itr

   tm=ar;

   for i=1:sr

       for j=1:sc

           

           %%%

           if(ar(i,j)==15)

               if(rand() <= p(i,j) )

                       tm(i,j) = 50;

               end

           end

           %%%

       end

   end

   ar=tm;

   pause(1);

   image(ar);

   hold on;

end






⛄ 运行结果

⛄ 参考文献

[1] 田朝晖. 基于元胞自动机的城市空间形态模拟与优化研究[D]. 湖南师范大学, 2012.

[2] 尹长林, 张鸿辉, 游胜景,等. 基于元胞自动机模型的长沙市城市增长模拟研究[J]. 工程勘察, 2009, 37(4):6.

[3] 徐昔保. 基于GIS与元胞自动机的城市土地利用动态演化模拟与优化研究[D]. 兰州大学, 2007.

[4] 沈体雁, 张恒, 张进洁. 基于MODIS遥感影像及元胞自动机的京津冀地区城市模拟研究[C]// International Conference on Remote Sensing. 2010.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料


相关文章
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
213 0
|
2月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
114 0
|
2月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
147 8
|
2月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
144 8
|
2月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
159 8
|
2月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
109 0
|
2月前
|
编解码 运维 算法
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
156 12
|
2月前
|
人工智能 数据可视化 网络性能优化
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
106 9

热门文章

最新文章