ਗੂਗਲ ਅਰਥ ਇੰਜਨ ਸਕ੍ਰਿਪਟਾਂ ਦੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਟਾਈਮ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰਨਾ
ਗੂਗਲ ਅਰਥ ਇੰਜਣ (ਜੀ.ਈ.ਈ.) ਵੱਡੇ ਪੈਮਾਨੇ ਦੇ ਭੂ-ਸਥਾਨਕ ਡੇਟਾ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਪਲੇਟਫਾਰਮ ਹੈ। ਹਾਲਾਂਕਿ, ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਸਮੇਂ ਦੇ ਨਾਲ ਅਕਸਰ ਸਮੱਸਿਆਵਾਂ ਦਾ ਸਾਹਮਣਾ ਕਰਨਾ ਪੈਂਦਾ ਹੈ, ਭਾਵੇਂ ਉਹਨਾਂ ਦੀਆਂ ਸਕ੍ਰਿਪਟਾਂ ਬੁਨਿਆਦੀ ਦਿਖਾਈ ਦੇਣ। ਇੱਕ ਸਕ੍ਰਿਪਟ ਜੋ ਚੱਲਣ ਵਿੱਚ ਕਈ ਮਿੰਟ ਲੈਂਦੀ ਹੈ, ਉਤਪਾਦਕਤਾ ਨੂੰ ਪ੍ਰਭਾਵਤ ਕਰ ਸਕਦੀ ਹੈ ਅਤੇ ਸੂਝ ਵਿੱਚ ਦੇਰੀ ਕਰ ਸਕਦੀ ਹੈ।
ਇਸ ਕੇਸ ਵਿੱਚ, ਇੱਕ ਉਪਭੋਗਤਾ ਨੇ ਸੈਂਟੀਨੇਲ ਅਤੇ ਲੈਂਡਸੈਟ 8 ਡੇਟਾ ਨੂੰ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਲਈ ਇੱਕ ਸਧਾਰਨ ਸਕ੍ਰਿਪਟ ਬਣਾਈ ਹੈ. ਇਸਦੀ ਸਾਦਗੀ ਦੇ ਬਾਵਜੂਦ, ਸਕ੍ਰਿਪਟ ਨੂੰ ਚਲਾਉਣ ਲਈ ਲਗਭਗ 3-5 ਮਿੰਟ ਲੱਗਦੇ ਹਨ। ਇਹ ਸਮਝਣਾ ਕਿ ਅਜਿਹਾ ਕਿਉਂ ਹੁੰਦਾ ਹੈ ਅਤੇ ਸਕਰਿਪਟ ਨੂੰ ਕਿਵੇਂ ਅਨੁਕੂਲਿਤ ਕਰਨਾ ਹੈ, ਕੁਸ਼ਲ ਡੇਟਾ ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਜ਼ਰੂਰੀ ਹੈ।
ਇੱਕ GEE ਸਕ੍ਰਿਪਟ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਕਈ ਕਾਰਕਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ, ਜਿਸ ਵਿੱਚ ਡੇਟਾ ਦਾ ਆਕਾਰ, ਫਿਲਟਰਿੰਗ, ਅਤੇ ਕੰਪਿਊਟੇਸ਼ਨਲ ਜਟਿਲਤਾ ਸ਼ਾਮਲ ਹੈ। ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਟਾਈਮ ਨੂੰ ਘਟਾਉਣ ਵਿੱਚ ਸਕ੍ਰਿਪਟ ਦੇ ਅੰਦਰ ਰੁਕਾਵਟਾਂ ਦੀ ਪਛਾਣ ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ, ਜਿਵੇਂ ਕਿ ਬੇਲੋੜੇ ਓਪਰੇਸ਼ਨ ਜਾਂ ਵੱਡੇ ਡੇਟਾਸੈਟ ਜੋ ਪ੍ਰੋਸੈਸਿੰਗ ਨੂੰ ਹੌਲੀ ਕਰਦੇ ਹਨ।
ਇਹ ਲੇਖ GEE ਵਿੱਚ ਹੌਲੀ ਚੱਲਣ ਦੇ ਸਮੇਂ ਦੇ ਸੰਭਾਵੀ ਕਾਰਨਾਂ ਦੀ ਪੜਚੋਲ ਕਰੇਗਾ ਅਤੇ ਦਿੱਤੀ ਗਈ ਸਕ੍ਰਿਪਟ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣ ਲਈ ਵਿਹਾਰਕ ਸੁਝਾਅ ਪ੍ਰਦਾਨ ਕਰੇਗਾ। ਇਹਨਾਂ ਰਣਨੀਤੀਆਂ ਨੂੰ ਲਾਗੂ ਕਰਕੇ, ਉਪਭੋਗਤਾ ਆਪਣੇ ਭੂ-ਸਥਾਨਕ ਡੇਟਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਾਰਜਾਂ ਦੀ ਗਤੀ ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਸੁਧਾਰ ਕਰ ਸਕਦੇ ਹਨ।
ਹੁਕਮ | ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ |
---|---|
normalizedDifference() | ਇਹ ਫੰਕਸ਼ਨ NDVI, NDWI, ਅਤੇ NDSI ਵਰਗੇ ਸੂਚਕਾਂਕ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਦੋ ਬੈਂਡਾਂ ਵਿਚਕਾਰ ਅੰਤਰ ਦੀ ਗਣਨਾ ਕਰਕੇ, ਉਹਨਾਂ ਦੇ ਜੋੜ ਨਾਲ ਵੰਡਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਰਿਮੋਟ ਸੈਂਸਿੰਗ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ ਖਾਸ ਹੈ ਜਿੱਥੇ ਬਨਸਪਤੀ, ਪਾਣੀ ਅਤੇ ਬਰਫ਼ ਦੇ ਸੂਚਕਾਂਕ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। |
filterBounds() | ਸਿਰਫ਼ ਉਹਨਾਂ ਚਿੱਤਰਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਇੱਕ ਚਿੱਤਰ ਸੰਗ੍ਰਹਿ ਨੂੰ ਫਿਲਟਰ ਕਰਦਾ ਹੈ ਜੋ ਕਿਸੇ ਦਿੱਤੇ ਜਿਓਮੈਟਰੀ ਨੂੰ ਕੱਟਦੇ ਹਨ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਇਹ ਸੈਟੇਲਾਈਟ ਡੇਟਾ ਨੂੰ ਵਿਆਜ ਦੇ ਪਰਿਭਾਸ਼ਿਤ ਬਿੰਦੂ ਦੇ ਆਲੇ ਦੁਆਲੇ ਦੇ ਖੇਤਰ ਤੱਕ ਸੀਮਤ ਕਰਦਾ ਹੈ, ਅਪ੍ਰਸੰਗਿਕ ਡੇਟਾ ਨੂੰ ਛੱਡ ਕੇ ਪ੍ਰੋਸੈਸਿੰਗ ਨੂੰ ਵਧੇਰੇ ਕੁਸ਼ਲ ਬਣਾਉਂਦਾ ਹੈ। |
filterDate() | ਇਹ ਕਮਾਂਡ ਚਿੱਤਰ ਸੰਗ੍ਰਹਿ ਨੂੰ ਇੱਕ ਖਾਸ ਮਿਤੀ ਸੀਮਾ ਤੱਕ ਸੀਮਿਤ ਕਰਦੀ ਹੈ। ਸਾਡੀ ਸਮੱਸਿਆ ਲਈ, ਸੈਂਟੀਨੇਲ ਅਤੇ ਲੈਂਡਸੈਟ ਡੇਟਾਸੈਟਾਂ ਲਈ ਇੱਕੋ ਸਮੇਂ ਦੀ ਮਿਆਦ ਦੇ ਵਿਚਕਾਰ ਅੰਤਰਾਂ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ। |
addBands() | ਸੰਗ੍ਰਹਿ ਵਿੱਚ ਹਰੇਕ ਚਿੱਤਰ ਵਿੱਚ ਨਵੇਂ ਗਣਨਾ ਕੀਤੇ ਬੈਂਡ (ਜਿਵੇਂ ਕਿ NDVI, NDWI, ਅਤੇ NDSI) ਜੋੜਦਾ ਹੈ। ਇਹ ਵੱਖਰੇ ਡੇਟਾਸੈਟਾਂ ਨੂੰ ਬਣਾਏ ਬਿਨਾਂ ਇੱਕੋ ਚਿੱਤਰ ਸੰਗ੍ਰਹਿ ਲਈ ਕਈ ਸੂਚਕਾਂਕ ਲਾਗੂ ਕਰਨ ਲਈ ਜ਼ਰੂਰੀ ਹੈ। |
unmask() | ਮਾਸਕ ਕੀਤੇ ਪਿਕਸਲ ਨੂੰ ਇੱਕ ਨਿਰਧਾਰਤ ਮੁੱਲ ਨਾਲ ਭਰਦਾ ਹੈ। ਸਾਡੀ ਸਕ੍ਰਿਪਟ ਵਿੱਚ, ਇਸਦੀ ਵਰਤੋਂ ਸਥਾਈ ਪਾਣੀ ਦੇ ਖੇਤਰਾਂ ਨੂੰ ਬੇਪਰਦ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਪੂਰੇ ਖੇਤਰ ਵਿੱਚ ਡੇਟਾ ਦੀ ਨਿਰੰਤਰ ਪ੍ਰਕਿਰਿਆ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। |
reduce() | ਇੱਕ ਖਾਸ ਰੀਡਿਊਸਰ ਫੰਕਸ਼ਨ, ਜਿਵੇਂ ਕਿ ee.Reducer.percentile() ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਚਿੱਤਰ ਸੰਗ੍ਰਹਿ ਨੂੰ ਘਟਾਉਂਦਾ ਹੈ। ਇੱਥੇ, ਇਹ ਮਿਸ਼ਰਿਤ ਚਿੱਤਰ ਬਣਾਉਣ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣ ਲਈ, ਪਿਕਸਲ ਮੁੱਲਾਂ ਦੇ 30ਵੇਂ ਪ੍ਰਤੀਸ਼ਤ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। |
clip() | ਕਿਸੇ ਚਿੱਤਰ ਨੂੰ ਖਾਸ ਦਿਲਚਸਪੀ ਵਾਲੇ ਖੇਤਰ ਦੀਆਂ ਸੀਮਾਵਾਂ 'ਤੇ ਕਲਿੱਪ ਕਰਦਾ ਹੈ। ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਸਿਰਫ ਖੇਤਰ ਨਾਲ ਸੰਬੰਧਿਤ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜੋ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਨੂੰ ਤੇਜ਼ ਕਰਦਾ ਹੈ। |
gt() | ਇਸ ਕਮਾਂਡ ਦਾ ਅਰਥ 'ਵਧੇਰੇ ਤੋਂ ਵੱਧ' ਹੈ ਅਤੇ ਇਸਦੀ ਵਰਤੋਂ ਥ੍ਰੈਸ਼ਹੋਲਡ ਦੇ ਅਧਾਰ 'ਤੇ ਬਾਈਨਰੀ ਚਿੱਤਰ ਬਣਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਇਹ 80% ਤੋਂ ਵੱਧ ਪਾਣੀ ਦੀ ਮੌਜੂਦਗੀ ਵਾਲੇ ਖੇਤਰਾਂ ਦੀ ਪਛਾਣ ਕਰਦਾ ਹੈ। |
map() | ਸੰਗ੍ਰਹਿ ਵਿੱਚ ਹਰੇਕ ਚਿੱਤਰ ਲਈ ਇੱਕ ਫੰਕਸ਼ਨ ਲਾਗੂ ਕਰਦਾ ਹੈ। ਸਾਡੀ ਉਦਾਹਰਨ ਵਿੱਚ, ਇਹ ਵਰਕਫਲੋ ਨੂੰ ਸੁਚਾਰੂ ਬਣਾਉਣ, ਸੰਗ੍ਰਹਿ ਵਿੱਚ ਸਾਰੇ ਚਿੱਤਰਾਂ ਵਿੱਚ NDVI, NDWI, ਅਤੇ NDSI ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ addIndices ਫੰਕਸ਼ਨ ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ। |
ਸੁਧਰੀ ਕੁਸ਼ਲਤਾ ਲਈ GEE ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰਨਾ
ਪ੍ਰਦਾਨ ਕੀਤੀ ਸਕ੍ਰਿਪਟ ਵਿੱਚ, ਟੀਚਾ ਦੋ ਵੱਖ-ਵੱਖ ਸਰੋਤਾਂ ਤੋਂ ਸੈਟੇਲਾਈਟ ਇਮੇਜਰੀ ਨੂੰ ਕੱਢਣਾ ਅਤੇ ਪ੍ਰਕਿਰਿਆ ਕਰਨਾ ਹੈ: ਸੈਂਟੀਨੇਲ ਅਤੇ ਲੈਂਡਸੈਟ। ਦ ਪਲੇਟਫਾਰਮ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਸੈਟੇਲਾਈਟ ਡੇਟਾ ਦੀ ਵਿਸ਼ਾਲ ਮਾਤਰਾ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਅਤੇ ਵੱਖ-ਵੱਖ ਕਾਰਜਾਂ ਜਿਵੇਂ ਕਿ ਫਿਲਟਰਿੰਗ, ਇੰਡੈਕਸਿੰਗ ਅਤੇ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਇਸ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਵਰਤੀਆਂ ਗਈਆਂ ਮੁੱਖ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ ਫੰਕਸ਼ਨ, ਜੋ NDVI, NDWI, ਅਤੇ NDSI ਵਰਗੇ ਮਹੱਤਵਪੂਰਨ ਸੂਚਕਾਂਕ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਲਗਾਇਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਸੂਚਕਾਂਕ ਨਿਰਧਾਰਤ ਖੇਤਰ ਵਿੱਚ ਬਨਸਪਤੀ, ਪਾਣੀ ਅਤੇ ਬਰਫ਼ ਦੇ ਢੱਕਣ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹਨ। ਸਕ੍ਰਿਪਟ ਦਿਲਚਸਪੀ ਦੇ ਬਿੰਦੂ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਕੇ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ ਅਤੇ ਪ੍ਰਦਾਨ ਕੀਤੇ ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਸ 'ਤੇ ਨਕਸ਼ੇ ਨੂੰ ਕੇਂਦਰਿਤ ਕਰਦੀ ਹੈ।
ਸਕ੍ਰਿਪਟ ਕਈ ਫਿਲਟਰਾਂ ਨੂੰ ਲਾਗੂ ਕਰਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ ਅਤੇ , ਪ੍ਰੋਸੈਸ ਕੀਤੇ ਜਾ ਰਹੇ ਡੇਟਾ ਦੀ ਮਾਤਰਾ ਨੂੰ ਘਟਾਉਣ ਲਈ, ਇਸ ਤਰ੍ਹਾਂ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਟਾਈਮ ਵਿੱਚ ਸੁਧਾਰ ਹੁੰਦਾ ਹੈ। ਉਦਾਹਰਣ ਦੇ ਲਈ, ਫਿਲਟਰਬਾਉਂਡਸ() ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਸਿਰਫ ਦਿਲਚਸਪੀ ਦੇ ਖੇਤਰ ਨੂੰ ਕੱਟਣ ਵਾਲੀਆਂ ਤਸਵੀਰਾਂ ਹੀ ਸ਼ਾਮਲ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ, ਜਦਕਿ ਫਿਲਟਰ ਮਿਤੀ() ਚਿੱਤਰਾਂ ਨੂੰ ਇੱਕ ਖਾਸ ਮਿਤੀ ਸੀਮਾ ਤੱਕ ਸੀਮਿਤ ਕਰਦਾ ਹੈ। ਇਹ ਸੈਂਟੀਨੇਲ ਅਤੇ ਲੈਂਡਸੈਟ ਇਮੇਜਰੀ ਵਰਗੇ ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਲਈ ਜ਼ਰੂਰੀ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਕੰਪਿਊਟੇਸ਼ਨਲ ਲੋਡ ਨੂੰ ਘੱਟ ਕਰਦਾ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਦ ਕਲਾਉਡ ਕਵਰੇਜ ਲਈ ਉਹਨਾਂ ਚਿੱਤਰਾਂ ਨੂੰ ਰੱਦ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ ਜਿਹਨਾਂ ਵਿੱਚ ਬਹੁਤ ਜ਼ਿਆਦਾ ਕਲਾਊਡ ਹਨ, ਬਿਹਤਰ-ਗੁਣਵੱਤਾ ਵਿਸ਼ਲੇਸ਼ਣ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦੇ ਹੋਏ।
ਸਕ੍ਰਿਪਟ ਦਾ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਪਹਿਲੂ ਹੈ ਫੰਕਸ਼ਨ, ਜੋ ਕਿ ਕਲਪਿਤ ਸੂਚਕਾਂਕ (NDVI, NDWI, NDSI) ਨੂੰ ਚਿੱਤਰ ਵਿੱਚ ਜੋੜਦਾ ਹੈ, ਉਹਨਾਂ ਨੂੰ ਹੋਰ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ ਪਹੁੰਚਯੋਗ ਬਣਾਉਂਦਾ ਹੈ। ਸਕ੍ਰਿਪਟ ਵਿੱਚ JRC ਗਲੋਬਲ ਸਰਫੇਸ ਵਾਟਰ ਡੇਟਾਸੇਟ ਤੋਂ ਡੇਟਾ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਇੱਕ ਸਥਾਈ ਵਾਟਰ ਮਾਸਕ ਵੀ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ। ਵਾਟਰ ਮਾਸਕ ਪਾਣੀ ਦੀ ਜ਼ਿਆਦਾ ਮੌਜੂਦਗੀ (80% ਤੋਂ ਵੱਧ) ਵਾਲੇ ਖੇਤਰਾਂ ਨੂੰ ਬਾਹਰ ਕੱਢਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ, ਜੋ ਕਿ ਬਨਸਪਤੀ ਅਤੇ ਬਰਫ਼ ਦੇ ਵਿਸ਼ਲੇਸ਼ਣ ਦੇ ਨਤੀਜਿਆਂ ਨੂੰ ਘਟਾ ਸਕਦਾ ਹੈ। ਰਾਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਫੰਕਸ਼ਨ, ਜੋ ਸਕਰਿਪਟ ਨੂੰ ਪਿਕਸਲ ਮੁੱਲਾਂ ਦੇ ਆਧਾਰ 'ਤੇ ਖੇਤਰਾਂ ਨੂੰ ਅਲੱਗ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੇ ਹਨ।
ਅੰਤ ਵਿੱਚ, ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ ਇੱਕ ਸੰਯੁਕਤ ਚਿੱਤਰ ਬਣਾਉਣ ਲਈ ਪਰਸੈਂਟਾਈਲ ਰੀਡਿਊਸਰ ਨਾਲ ਫੰਕਸ਼ਨ ਜੋ ਚੁਣੇ ਗਏ ਪਿਕਸਲ ਮੁੱਲਾਂ ਦੇ 30ਵੇਂ ਪ੍ਰਤੀਸ਼ਤ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। ਇਹ ਸੰਯੁਕਤ ਚਿੱਤਰ ਫਿਰ ਦਿਲਚਸਪੀ ਵਾਲੇ ਖੇਤਰ ਵਿੱਚ ਕਲਿੱਪ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਨਕਸ਼ੇ 'ਤੇ ਵਿਜ਼ੁਅਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਫੰਕਸ਼ਨ. ਵਿਜ਼ੂਅਲ ਪੈਰਾਮੀਟਰਾਂ ਨੂੰ ਸੈਂਟੀਨੇਲ ਅਤੇ ਲੈਂਡਸੈਟ ਕੰਪੋਜ਼ਿਟਸ ਦੋਵਾਂ ਲਈ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਿਸ ਨਾਲ ਉਪਭੋਗਤਾ ਉਹਨਾਂ ਨੂੰ ਉਚਿਤ ਰੰਗ ਸੈਟਿੰਗਾਂ ਨਾਲ ਦੇਖ ਸਕਦਾ ਹੈ। ਫਿਲਟਰਿੰਗ, ਮਾਸਕਿੰਗ, ਅਤੇ ਕੰਪੋਜ਼ਿਟ ਜਨਰੇਸ਼ਨ ਵਰਗੇ ਵੱਖ-ਵੱਖ ਚਿੱਤਰ ਪ੍ਰੋਸੈਸਿੰਗ ਕਦਮਾਂ ਨੂੰ ਜੋੜ ਕੇ, ਇਹ ਸਕ੍ਰਿਪਟ ਸੈਟੇਲਾਈਟ ਇਮੇਜਰੀ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਦਾ ਇੱਕ ਕੁਸ਼ਲ ਤਰੀਕਾ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ, ਹਾਲਾਂਕਿ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਸਮੇਂ ਨੂੰ ਘਟਾਉਣ ਲਈ ਹੋਰ ਅਨੁਕੂਲਤਾ ਨੂੰ ਲਾਗੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਤੇਜ਼ ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਗੂਗਲ ਅਰਥ ਇੰਜਨ ਸਕ੍ਰਿਪਟ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰਨਾ
ਇਹ ਹੱਲ ਗੂਗਲ ਅਰਥ ਇੰਜਣ (ਜੀ.ਈ.ਈ.) ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਜੋ ਡਾਟਾ ਪ੍ਰਾਪਤੀ ਦੇ ਸਮੇਂ ਨੂੰ ਘਟਾ ਕੇ ਅਤੇ ਕਾਰਜਾਂ ਨੂੰ ਸਰਲ ਬਣਾ ਕੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣ 'ਤੇ ਜ਼ੋਰ ਦਿੰਦਾ ਹੈ। JavaScript ਨੂੰ ਸਕ੍ਰਿਪਟਿੰਗ ਭਾਸ਼ਾ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।
var pointJSP = ee.Geometry.Point([86.465263, 20.168076]);
Map.centerObject(pointJSP, 14);
// Combine date variables for flexibility
var startDate = '2024-02-01';
var endDate = '2024-03-01';
// Function to add NDVI, NDWI, NDSI
var addIndices = function(image) {
var ndvi = image.normalizedDifference(['NIR', 'RED']).rename('NDVI');
var ndwi = image.normalizedDifference(['NIR', 'SWIR1']).rename('NDWI');
var ndsi = image.normalizedDifference(['SWIR1', 'SWIR2']).rename('NDSI');
return image.addBands(ndvi).addBands(ndwi).addBands(ndsi);
};
// Use fewer data points by filtering for cloud-free pixels only once
var sentinel = ee.ImageCollection('COPERNICUS/S2_SR')
.filterBounds(pointJSP)
.filterDate(startDate, endDate)
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 30));
ਸਕ੍ਰਿਪਟ ਦੇਰੀ ਨੂੰ ਘੱਟ ਕਰਨ ਲਈ GEE ਲਈ ਕੁਸ਼ਲ ਡੇਟਾ ਪ੍ਰੋਸੈਸਿੰਗ ਦੀ ਵਰਤੋਂ ਕਰਨਾ
ਇਹ ਹੱਲ ਸੂਚਕਾਂਕ ਗਣਨਾਵਾਂ ਅਤੇ ਥ੍ਰੈਸ਼ਹੋਲਡ ਨੂੰ ਜੋੜ ਕੇ ਅਨੁਕੂਲਿਤ ਡੇਟਾ ਹੈਂਡਲਿੰਗ ਨੂੰ ਏਕੀਕ੍ਰਿਤ ਕਰਦਾ ਹੈ। ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਗੂਗਲ ਅਰਥ ਇੰਜਣ ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਲਾਗੂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।
var landsat8 = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR')
.filterBounds(pointJSP)
.filterDate(startDate, endDate)
.filter(ee.Filter.lt('CLOUD_COVER', 30));
// Apply water mask for permanent water areas
var waterMask = ee.Image('JRC/GSW1_4/GlobalSurfaceWater').select('occurrence').gt(80).unmask();
// Add indices to Landsat 8 imagery
var landsatIndices = landsat8.map(addIndices);
var composite = landsatIndices.reduce(ee.Reducer.percentile([30])).clip(pointJSP).mask(waterMask.eq(0));
Map.addLayer(composite, {bands: ['RED', 'GREEN', 'BLUE'], min: 0, max: 3000}, 'Landsat Composite');
Map.addLayer(waterMask, {min: 0, max: 1, palette: ['white', 'blue']}, 'Water Mask', false);
ਰਿਮੋਟ ਸੈਂਸਿੰਗ ਸਕ੍ਰਿਪਟਾਂ ਦੀ ਕੁਸ਼ਲਤਾ ਵਿੱਚ ਸੁਧਾਰ ਕਰਨਾ
ਗੂਗਲ ਅਰਥ ਇੰਜਣ (ਜੀ.ਈ.ਈ.) ਸਕ੍ਰਿਪਟਾਂ ਦੇ ਨਾਲ ਕੰਮ ਕਰਨ ਵੇਲੇ ਇੱਕ ਮੁੱਖ ਵਿਚਾਰ ਇਹ ਯਕੀਨੀ ਬਣਾਉਣਾ ਹੈ ਕਿ ਓਪਰੇਸ਼ਨਾਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ। ਜਦੋਂ ਕਿ ਸੈਂਟੀਨੇਲ ਅਤੇ ਲੈਂਡਸੈਟ ਵਰਗੇ ਵੱਡੇ ਡੇਟਾਸੈਟਾਂ ਦੀ ਵਰਤੋਂ ਵਾਤਾਵਰਣ ਦੇ ਵਿਸ਼ਲੇਸ਼ਣ ਵਿੱਚ ਆਮ ਹੈ, ਡੇਟਾ ਦੀ ਪੂਰੀ ਮਾਤਰਾ ਸਕ੍ਰਿਪਟ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਨੂੰ ਹੌਲੀ ਕਰ ਸਕਦੀ ਹੈ। ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਬਿਹਤਰ ਬਣਾਉਣ ਦਾ ਇੱਕ ਤਰੀਕਾ ਇਹ ਯਕੀਨੀ ਬਣਾਉਣਾ ਹੈ ਕਿ ਸਿਰਫ਼ ਲੋੜੀਂਦੇ ਡੇਟਾ 'ਤੇ ਕਾਰਵਾਈ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ। ਵਰਗੇ ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਅਤੇ ਡੇਟਾਸੇਟ ਦੇ ਆਕਾਰ ਨੂੰ ਘੱਟ ਕਰਦਾ ਹੈ, ਜੋ ਗਣਨਾ ਨੂੰ ਸੁਚਾਰੂ ਬਣਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ। ਖਾਸ ਮਿਤੀ ਰੇਂਜਾਂ ਅਤੇ ਭੂਗੋਲਿਕ ਖੇਤਰਾਂ ਦੀ ਚੋਣ ਕਰਨ ਨਾਲ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਸਮਾਂ ਕਾਫ਼ੀ ਘੱਟ ਹੋ ਸਕਦਾ ਹੈ।
ਇੱਕ ਹੋਰ ਪਹਿਲੂ ਜੋ GEE ਸਕ੍ਰਿਪਟ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਪ੍ਰਭਾਵਤ ਕਰਦਾ ਹੈ ਉਹ ਹੈ ਕਿ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਿਵੇਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਸਕ੍ਰਿਪਟ ਉਦਾਹਰਨ ਮਹੱਤਵਪੂਰਨ ਸੂਚਕਾਂਕ ਜਿਵੇਂ ਕਿ NDVI, NDWI, ਅਤੇ NDSI ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਇੱਕ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। ਇਹਨਾਂ ਸੂਚਕਾਂਕ ਨੂੰ ਚਿੱਤਰ ਸੰਗ੍ਰਹਿ ਵਿੱਚ ਬੈਂਡਾਂ ਦੇ ਰੂਪ ਵਿੱਚ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ, ਜੋ ਇੱਕ ਹੋਰ ਡੂੰਘਾਈ ਨਾਲ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਹਾਲਾਂਕਿ, ਇੱਕ ਆਮ ਗਲਤੀ ਪਹਿਲਾਂ ਫਿਲਟਰ ਕੀਤੇ ਬਿਨਾਂ ਇੱਕ ਪੂਰੇ ਡੇਟਾਸੈਟ ਵਿੱਚ ਅਜਿਹੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨਾ ਹੈ। ਅਪ੍ਰਸੰਗਿਕ ਡੇਟਾ 'ਤੇ ਬੇਲੋੜੀ ਗਣਨਾਵਾਂ ਤੋਂ ਬਚਣ ਲਈ ਫਿਲਟਰ ਕਰਨ ਤੋਂ ਬਾਅਦ ਅਜਿਹੇ ਓਪਰੇਸ਼ਨਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ।
ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਸਕ੍ਰਿਪਟ ਦਾ ਇੱਕ ਹੋਰ ਤੱਤ ਹੈ ਜਿਸ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਬਹੁਤ ਸਾਰੀਆਂ ਲੇਅਰਾਂ ਜਾਂ ਗੁੰਝਲਦਾਰ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਜੋੜਨਾ ਪ੍ਰੋਸੈਸਿੰਗ ਦੇ ਸਮੇਂ ਨੂੰ ਰੋਕ ਸਕਦਾ ਹੈ। ਸਕ੍ਰਿਪਟ ਕੰਪੋਜ਼ਿਟਸ ਨੂੰ ਰੈਂਡਰ ਕਰਨ ਲਈ ਪਹਿਲਾਂ ਤੋਂ ਪਰਿਭਾਸ਼ਿਤ ਵਿਜ਼ੂਅਲ ਪੈਰਾਮੀਟਰਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ, ਪਰ ਕੁਝ ਲੇਅਰਾਂ ਨੂੰ ਅਸਮਰੱਥ ਬਣਾ ਕੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਸੁਧਾਰਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਦੋਂ ਤੱਕ ਉਹਨਾਂ ਦੀ ਸਪੱਸ਼ਟ ਤੌਰ 'ਤੇ ਲੋੜ ਨਾ ਹੋਵੇ। ਇਹ ਇਸਦੀ ਕਾਰਜਸ਼ੀਲਤਾ ਨੂੰ ਕਾਇਮ ਰੱਖਦੇ ਹੋਏ ਸਕ੍ਰਿਪਟ ਨੂੰ ਹਲਕਾ ਰੱਖਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ। ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਕਮਾਂਡਾਂ ਇਹ ਵੀ ਯਕੀਨੀ ਬਣਾਉਂਦੀਆਂ ਹਨ ਕਿ ਸਿਰਫ਼ ਲੋੜੀਂਦਾ ਖੇਤਰ ਹੀ ਰੈਂਡਰ ਕੀਤਾ ਗਿਆ ਹੈ, ਸਮੁੱਚੇ ਪ੍ਰੋਸੈਸਿੰਗ ਬੋਝ ਨੂੰ ਘਟਾਉਂਦਾ ਹੈ।
- ਮੈਂ ਆਪਣੀਆਂ GEE ਸਕ੍ਰਿਪਟਾਂ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਵਿੱਚ ਕਿਵੇਂ ਸੁਧਾਰ ਕਰਾਂ?
- ਦੀ ਵਰਤੋਂ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਓ , , ਅਤੇ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਆਪਣੇ ਡੇਟਾਸੈਟ ਦਾ ਆਕਾਰ ਘਟਾਓ।
- ਮੇਰੀ GEE ਸਕ੍ਰਿਪਟ ਚੱਲਣ ਵਿੱਚ ਇੰਨਾ ਸਮਾਂ ਕਿਉਂ ਲੈਂਦੀ ਹੈ?
- ਵੱਡੇ ਡੇਟਾਸੇਟਸ ਅਤੇ ਗੁੰਝਲਦਾਰ ਗਣਨਾਵਾਂ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਨੂੰ ਹੌਲੀ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਵਰਤੋ ਅਤੇ ਪ੍ਰੋਸੈਸਿੰਗ ਨੂੰ ਸਬੰਧਤ ਖੇਤਰਾਂ ਤੱਕ ਸੀਮਤ ਕਰਨ ਲਈ।
- ਕੀ ਮੈਂ GEE ਵਿੱਚ ਸੰਸਾਧਿਤ ਚਿੱਤਰਾਂ ਦੀ ਗਿਣਤੀ ਨੂੰ ਘਟਾ ਸਕਦਾ ਹਾਂ?
- ਹਾਂ, ਅਰਜ਼ੀ ਦੇ ਕੇ ਕਲਾਉਡ ਕਵਰੇਜ ਲਈ ਅਤੇ ਖਾਸ ਸਮੇਂ 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਿਤ ਕਰਨ ਲਈ।
- ਮੈਂ ਆਪਣੀ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਸੂਚਕਾਂਕ ਗਣਨਾ ਨੂੰ ਕਿਵੇਂ ਸਰਲ ਬਣਾ ਸਕਦਾ ਹਾਂ?
- ਵਰਗੇ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰੋ ਇੱਕ ਕਦਮ ਵਿੱਚ ਮਲਟੀਪਲ ਸੂਚਕਾਂਕ (ਉਦਾਹਰਨ ਲਈ, NDVI, NDWI) ਜੋੜਨ ਨੂੰ ਸੁਚਾਰੂ ਬਣਾਉਣ ਲਈ।
- ਕੀ ਸਿਰਫ ਜ਼ਰੂਰੀ ਪਰਤਾਂ ਦੀ ਕਲਪਨਾ ਕਰਨਾ ਸੰਭਵ ਹੈ?
- ਹਾਂ, ਬੇਲੋੜੀਆਂ ਲੇਅਰਾਂ ਨੂੰ ਅਸਮਰੱਥ ਬਣਾਓ ਅਤੇ ਇਸਦੇ ਨਾਲ ਸਰਲ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਪੈਰਾਮੀਟਰਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ ਬਿਹਤਰ ਪ੍ਰਦਰਸ਼ਨ ਲਈ.
ਗੂਗਲ ਅਰਥ ਇੰਜਨ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣ ਵਿੱਚ ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸੰਭਾਲਣਾ, ਫਿਲਟਰਾਂ ਨੂੰ ਜਲਦੀ ਲਾਗੂ ਕਰਨਾ, ਅਤੇ ਬੇਲੋੜੇ ਡੇਟਾ ਕਾਰਜਾਂ ਨੂੰ ਘਟਾਉਣਾ ਸ਼ਾਮਲ ਹੈ। ਦੁਆਰਾ ਫਿਲਟਰ ਕਰਨ ਵਰਗੇ ਜ਼ਰੂਰੀ ਖੇਤਰਾਂ 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਤ ਕਰਨਾ ਅਤੇ ਸਥਾਨ ਪ੍ਰੋਸੈਸਿੰਗ ਦੇ ਸਮੇਂ ਨੂੰ ਮਹੱਤਵਪੂਰਣ ਰੂਪ ਵਿੱਚ ਘਟਾ ਸਕਦਾ ਹੈ।
ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰਕੇ ਜਿਵੇਂ ਕਿ ਅਤੇ ਅਪ੍ਰਸੰਗਿਕ ਡੇਟਾ ਨੂੰ ਖਤਮ ਕਰਨ ਲਈ ਥ੍ਰੈਸ਼ਹੋਲਡ ਮਾਸਕ ਦੀ ਵਰਤੋਂ ਕਰਕੇ, ਸਕ੍ਰਿਪਟ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਹੋਰ ਸੁਧਾਰਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਤਕਨੀਕਾਂ ਗੂਗਲ ਅਰਥ ਇੰਜਣ ਪਲੇਟਫਾਰਮ ਦੇ ਤੇਜ਼ ਨਤੀਜੇ ਅਤੇ ਬਿਹਤਰ ਵਰਤੋਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦੇ ਹੋਏ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਨੂੰ ਸੁਚਾਰੂ ਬਣਾ ਸਕਦੀਆਂ ਹਨ।
- ਇਹ ਲੇਖ ਅਧਿਕਾਰਤ Google ਅਰਥ ਇੰਜਣ ਦਸਤਾਵੇਜ਼ਾਂ ਦੇ ਆਧਾਰ 'ਤੇ ਸਮੱਗਰੀ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਬਣਾਇਆ ਗਿਆ ਸੀ, ਜੋ ਸਕ੍ਰਿਪਟ ਅਨੁਕੂਲਨ ਤਕਨੀਕਾਂ ਦੀ ਜਾਣਕਾਰੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਗੂਗਲ ਅਰਥ ਇੰਜਣ ਗਾਈਡਾਂ
- GEE ਕਮਿਊਨਿਟੀ ਫੋਰਮ ਤੋਂ ਅਤਿਰਿਕਤ ਜਾਣਕਾਰੀ ਇਕੱਠੀ ਕੀਤੀ ਗਈ ਸੀ, ਜਿਸ ਵਿੱਚ ਗੁੰਝਲਦਾਰ ਸਕ੍ਰਿਪਟਾਂ ਵਿੱਚ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਬਿਹਤਰ ਬਣਾਉਣ ਲਈ ਚਰਚਾਵਾਂ ਅਤੇ ਹੱਲ ਪੇਸ਼ ਕੀਤੇ ਗਏ ਸਨ। ਗੂਗਲ ਅਰਥ ਇੰਜਨ ਕਮਿਊਨਿਟੀ
- ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸਾਂ ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਲਿੰਕ 'ਤੇ ਉਪਲਬਧ ਰਿਮੋਟ ਸੈਂਸਿੰਗ ਸਾਹਿਤ ਅਤੇ ਟਿਊਟੋਰਿਅਲਸ ਤੋਂ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਸੀ। ਨਾਸਾ ਅਰਥ ਆਬਜ਼ਰਵੇਟਰੀ