✅作者简介:热爱科研的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

⛄ 运行结果

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

⛄ 参考文献

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

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

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

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

⛳️ 代码获取关注我

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