Sir, please arrange for a workshop regarding such similar topics. There are many doubts faced by the researchers on this topic and it is very difficult to communicate with you using this platform. It would be immensely helpful for researchers working in this field.
thank you for making great videos, would make a video for data preparation on how to do make slop, roaddistrance, population raster with the same size and cell size?
How do you predict the 2019 and 2024 land cover maps since your code requires 2 actual present land cover maps? For example, if I observed the 2010 and 2020 land use map, how would I predict future 2030 land cover map based on the observed 2010 and 2020 land use map?
Let's assume you provide 2010 and 2020, then the code will predict it for 2030. If you provide it for 2015 and 2020, the code will predict for 2025 and so on. It uses the second land cover and it time gap from the first land cover to get prediction. You can read the details of the method in the journal article linked to it. If you are familiar with Python feel free to modify the code as per your need.
Thank you sharing the article,data and the python scripts!!! i have query,in what way this study differs from other studies that employ CA-markov chain model? please enlighten me
Sir, thank you for the useful video! But I'm confused about the weight of those parameters. I think it's also important. Could you explain how to decide it and add it in the python?
Hi, thank you for your video. I As part of my master's thesis I am trying to predict the future land cover. As I have no experience of coding, I am using a plugin for QGIS called MOLUSCE. I tried using the plugin with your sample data and it works fine. However, the problem that I am facing now is, How to convert my LULC maps (which are in polygon feature) and Variable maps (also in polygon feature) to TIFF with exactly same properties of Row, Column, Cell size and No data values. Hope you will be able to help. Thank you.
Hey... I'm also predicting the LULC. You can save your raster file using the export option and choose tiff as the format. To match the cell geometry/dimension use the clipping tool.
hey! I'm trying to use that too for master's thesis but I'm stuck at area changes calculations, it's giving me a value error that I am unable to understand where's coming from, if you were able to run it successfully and would be able help, please let me know. Thanks
@@w.w.8951 You should carefully read this code and understand what each line is doing. Once you develop a good understanding, you will be able to modify as per your needs. It is difficult for me to support you remotely since this is not an error, rather an extension of the given code.
@@pratyushtripathy2750 yep, i understand. I tried but still got errors. Are you still working in academics? Would it be sth of great interests for you to develop an extension?
Thanks for such wonderful tutorial, Sir how can i get road proximity data, CBD, slope for any state of india in mentioned format. Can you give any link. Thank you
If you are using ANN, you don't need to get into the thresholding bussiness at all. ANN is an automated model, unlike the version of CA that we describe in the paper, which is manual.
Dear sir, thank you for your helpful video. I used your code but my result is slightly different from your output. I want to replicate exactly your result, can you share your parameters for each prediction? The caModel.setThreshold(3, -15000, -10000, 8000, -3, -1). Thank you very much!
Hey! I am currently working in Landsat-8 data (Bangalore images), I have to integrate Machine Learning or Deep Learning techniques with cellular automata for Urban Growth Modelling in Python, but I don't have much idea, can you help me on how to get started here?
because when i use the 1999 and 2004 landcover to predict the model, the predicted result still have less built up area than the Actual 2014 landcover,
@@yundigremory8794 The difference in years between lc of t1 and t2 is your step, so the predicted image will always be t2+step. Now the key to tweak parameters that best match with the actual lc of t2+step. If your step size is large, you may need to either increase the kernel size or run the smaller kernel multiple times (the script doesn't support latter, you will have to modify it to do so). So for now, you can either pick a smaller step size or increase the size of the kernel.
@@pratyushtripathy2750 wich one is more accurate, if I want to predict 2014 LC, using the result of 1999-2004, we got 2009 predicted LC, then we use that result again to predict 2014 predicted LC, again we use it again to get 2019 Predicted LC OR directly use 1999 and 2009 to get 2019 predicted LC ? (just like you say that t2+step)
@@pratyushtripathy2750 how about di Population Density, in your videos, you change the GeoTIFF 2 time period, to 1999 and 2004, which mean you want to predict 2009 LC then why you use pop01 density in your original script model in line 221, is that influence the result of simulated LC, should we change the pop01 to another popX ?
@@pratyushtripathy2750 sorry for a lot of question sir, really interested with this CA things, but I am not understand Programming that much , , sorry sir
I need your help I am looking for a tutorial on how to drive PM 10and PM 2.5 form Landsat 8 data. It will be a great pleasure for me if you kindly extend your helping hand.
Sir i run this code and same data i have use which you have provided but i am getting the error as AttributeError: 'NoneType' object has no attribute 'GetRasterBand'.. please help me in solve this error
I am getting error when i write this line..#Create a land cover class which takes land cover data for two time period myLandcover = landcover(file1, file2)
@@pratyushtripathy2750 runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3') Traceback (most recent call last): File "", line 1, in runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3') File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 704, in runfile execfile(filename, namespace) File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 108, in execfile exec(compile(f.read(), filename, 'exec'), namespace) File "C:/Users/Sukku/.spyder-py3/temp.py", line 162, in myLandcover = landcover(file1, file2) File "C:/Users/Sukku/.spyder-py3/temp.py", line 30, in __init__ self.ds_lc1, self.arr_lc1 = readraster(file1) File "C:/Users/Sukku/.spyder-py3/temp.py", line 14, in readraster band = dataSource.GetRasterBand(1) AttributeError: 'NoneType' object has no attribute 'GetRasterBand' runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3') Traceback (most recent call last): File "", line 1, in runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3') File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 704, in runfile execfile(filename, namespace) File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 108, in execfile exec(compile(f.read(), filename, 'exec'), namespace) File "C:/Users/Sukku/.spyder-py3/temp.py", line 162, in myLandcover = landcover(file1, file2) File "C:/Users/Sukku/.spyder-py3/temp.py", line 30, in __init__ self.ds_lc1, self.arr_lc1 = readraster(file1) File "C:/Users/Sukku/.spyder-py3/temp.py", line 14, in readraster band = dataSource.GetRasterBand(1) AttributeError: 'NoneType' object has no attribute 'GetRasterBand'
@@sukeshininandeshwar1918 Looks like you are using Spyder from Anaconda. You are running a temporary script "C:/Users/Sukku/.spyder-py3/temp.py" as given by Spyder, please use the original script that you've downloaded. Another check would be to make sure that you've changed the parent directory as I did on 4:25. If not solved, please consider installing Python as shown in a previous video, rather than using it from Anaconda.
Thank you so much sir. My friend read your paper and recommended it to me... keep enriching us with knowledge sir...
Very informative sir. Thanks a lot for sharing your insights. Request you to please make a video on MOLUSCE plugin too.
Sir, please arrange for a workshop regarding such similar topics. There are many doubts faced by the researchers on this topic and it is very difficult to communicate with you using this platform. It would be immensely helpful for researchers working in this field.
thank you for making great videos, would make a video for data preparation on how to do make slop, roaddistrance, population raster with the same size and cell size?
Will add it to the list.
@@pratyushtripathy2750 Have you uploaded the videos for data preparation?
I need similar data for Bangalore, it's for a project. Would be great if you could reply as soon as possible.
How do you predict the 2019 and 2024 land cover maps since your code requires 2 actual present land cover maps? For example, if I observed the 2010 and 2020 land use map, how would I predict future 2030 land cover map based on the observed 2010 and 2020 land use map?
Let's assume you provide 2010 and 2020, then the code will predict it for 2030. If you provide it for 2015 and 2020, the code will predict for 2025 and so on. It uses the second land cover and it time gap from the first land cover to get prediction. You can read the details of the method in the journal article linked to it. If you are familiar with Python feel free to modify the code as per your need.
@@pratyushtripathy2750 Thank you. I highly appreciate your answer.
Thank you sharing the article,data and the python scripts!!! i have query,in what way this study differs from other studies that employ CA-markov chain model? please enlighten me
This was really interesting, and thank you for taking the time to make this video and share it!
Sir, thank you for the useful video! But I'm confused about the weight of those parameters. I think it's also important. Could you explain how to decide it and add it in the python?
I will write a blog post soon and share the link in the video description. Please bear till then.
@@pratyushtripathy2750 Wow! Thank you so much!
Dear Brother i need detail literature to learn this modelling for my research
Hi, thank you for your video. I As part of my master's thesis I am trying to predict the future land cover. As I have no experience of coding, I am using a plugin for QGIS called MOLUSCE. I tried using the plugin with your sample data and it works fine. However, the problem that I am facing now is, How to convert my LULC maps (which are in polygon feature) and Variable maps (also in polygon feature) to TIFF with exactly same properties of Row, Column, Cell size and No data values.
Hope you will be able to help. Thank you.
Hey... I'm also predicting the LULC. You can save your raster file using the export option and choose tiff as the format. To match the cell geometry/dimension use the clipping tool.
hey! I'm trying to use that too for master's thesis but I'm stuck at area changes calculations, it's giving me a value error that I am unable to understand where's coming from, if you were able to run it successfully and would be able help, please let me know. Thanks
Can we also change the land use classes? If so, could you please explain more about the method? Thanks
Yes, you can. Please be specific. Your question is not clear.
@@pratyushtripathy2750 thanks. I mean I have 10 LU classes and how could I modify the codes accordingly?
@@w.w.8951 You should carefully read this code and understand what each line is doing. Once you develop a good understanding, you will be able to modify as per your needs. It is difficult for me to support you remotely since this is not an error, rather an extension of the given code.
@@pratyushtripathy2750 yep, i understand. I tried but still got errors. Are you still working in academics? Would it be sth of great interests for you to develop an extension?
hello sir how to make the dimension of all tiff file similar
Hello @pratyush Tripathy, i need to pick your skills-kit for a project. How do i contact you to discuss it?
You can write to me at pratkrt@gmail.com
Thanks for such wonderful tutorial, Sir how can i get road proximity data, CBD, slope for any state of india in mentioned format. Can you give any link. Thank you
The ready to use data is rarely available. You may want to look out for shapefiles for the same and generate proximity layers.
Hi Pratyush,
Is it ok if I replicate this work using the R language for a university final project?
If the contribution of your work is developing R script for growth modelling, then sure, you can use this as the dummy data to develop your script.
how can you create the data ?
Sir, how did you defined the threshold values. Did you use any specific method to get the values.
It's a hit and trial thing. Start with some values, tweak it and see what gives you better accuracy.
@@pratyushtripathy2750 Thank you
My question Is how would you use neural networks to predict the threshold...that is using ann how can we find the best solution
If you are using ANN, you don't need to get into the thresholding bussiness at all. ANN is an automated model, unlike the version of CA that we describe in the paper, which is manual.
Dear sir, thank you for your helpful video. I used your code but my result is slightly different from your output. I want to replicate exactly your result, can you share your parameters for each prediction? The caModel.setThreshold(3, -15000, -10000, 8000, -3, -1). Thank you very much!
Are you able to share the python script
All the scripts are publicity available. Google as I show in the video.
Superbly done.
Sir, can you please teach how to perform CA Markov model.
Appreciate your interest. Will add it to my future videos list.
Hey! I am currently working in Landsat-8 data (Bangalore images), I have to integrate Machine Learning or Deep Learning techniques with cellular automata for Urban Growth Modelling in Python, but I don't have much idea, can you help me on how to get started here?
Could you please email details? pratkrt@gmail.com
@@pratyushtripathy2750 Hey Pratyush! I have emailed you all the details.
Would be really grateful if you could help me in any way! Thank you
sir, when I Use 1999 lc and 2009 lc in your datas, what years is predicted by your model ?
because when i use the 1999 and 2004 landcover to predict the model, the predicted result still have less built up area than the Actual 2014 landcover,
@@yundigremory8794 The difference in years between lc of t1 and t2 is your step, so the predicted image will always be t2+step. Now the key to tweak parameters that best match with the actual lc of t2+step. If your step size is large, you may need to either increase the kernel size or run the smaller kernel multiple times (the script doesn't support latter, you will have to modify it to do so). So for now, you can either pick a smaller step size or increase the size of the kernel.
@@pratyushtripathy2750 wich one is more accurate, if I want to predict 2014 LC, using the result of 1999-2004, we got 2009 predicted LC, then we use that result again to predict 2014 predicted LC, again we use it again to get 2019 Predicted LC
OR
directly use 1999 and 2009 to get 2019 predicted LC ? (just like you say that t2+step)
@@pratyushtripathy2750 how about di Population Density, in your videos, you change the GeoTIFF 2 time period, to 1999 and 2004, which mean you want to predict 2009 LC
then why you use pop01 density in your original script model in line 221, is that influence the result of simulated LC, should we change the pop01 to another popX ?
@@pratyushtripathy2750 sorry for a lot of question sir, really interested with this CA things, but I am not understand Programming that much , , sorry sir
I need your help I am looking for a tutorial on how to drive PM 10and PM 2.5 form Landsat 8 data. It will be a great pleasure for me if you kindly extend your helping hand.
Need a tutorial how to run SLEUTH model
On the way!
Sir i run this code and same data i have use which you have provided but i am getting the error as AttributeError: 'NoneType' object has no attribute 'GetRasterBand'.. please help me in solve this error
Hi Sukeshini, it means that the program hasn't read your data yet. Have you updated the location of files in the script after downloading?
yes sir I updated@@pratyushtripathy2750
I am getting error when i write this line..#Create a land cover class which takes land cover data for two time period
myLandcover = landcover(file1, file2)
@@pratyushtripathy2750
runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3')
Traceback (most recent call last):
File "", line 1, in
runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3')
File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 704, in runfile
execfile(filename, namespace)
File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 108, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/Users/Sukku/.spyder-py3/temp.py", line 162, in
myLandcover = landcover(file1, file2)
File "C:/Users/Sukku/.spyder-py3/temp.py", line 30, in __init__
self.ds_lc1, self.arr_lc1 = readraster(file1)
File "C:/Users/Sukku/.spyder-py3/temp.py", line 14, in readraster
band = dataSource.GetRasterBand(1)
AttributeError: 'NoneType' object has no attribute 'GetRasterBand'
runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3')
Traceback (most recent call last):
File "", line 1, in
runfile('C:/Users/Sukku/.spyder-py3/temp.py', wdir='C:/Users/Sukku/.spyder-py3')
File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 704, in runfile
execfile(filename, namespace)
File "C:\Users\Sukku\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 108, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/Users/Sukku/.spyder-py3/temp.py", line 162, in
myLandcover = landcover(file1, file2)
File "C:/Users/Sukku/.spyder-py3/temp.py", line 30, in __init__
self.ds_lc1, self.arr_lc1 = readraster(file1)
File "C:/Users/Sukku/.spyder-py3/temp.py", line 14, in readraster
band = dataSource.GetRasterBand(1)
AttributeError: 'NoneType' object has no attribute 'GetRasterBand'
@@sukeshininandeshwar1918 Looks like you are using Spyder from Anaconda. You are running a temporary script "C:/Users/Sukku/.spyder-py3/temp.py" as given by Spyder, please use the original script that you've downloaded. Another check would be to make sure that you've changed the parent directory as I did on 4:25. If not solved, please consider installing Python as shown in a previous video, rather than using it from Anaconda.
Thanks a lot for the video...
Thank you sir.
Sir I want to learn how to use CA model. Sir I mailed you on your mail id. please help sir and do reply.
Responded already!
please can i get your email
pratkrt@gmail.com