Atharv Subhekar commited on
Commit
e719630
β€’
1 Parent(s): 85b12d0

Application update

Browse files
.DS_Store CHANGED
Binary files a/.DS_Store and b/.DS_Store differ
 
FAISS/index.faiss ADDED
Binary file (3.12 kB). View file
 
sample_images/forst.jpg β†’ FAISS/index.pkl RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:338231fa439632e40cf5a021b6a73c962e43c4d284fc1a42ae1eea945a783710
3
- size 8705579
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:248f2275da40bdc64458bfe69b199b8625b5c5b1977b470f9e1e10c81b4a4cd9
3
+ size 16386
app.py CHANGED
@@ -10,10 +10,12 @@ Original file is located at
10
  #!pip install gradio --quiet
11
  #!pip install -Uq transformers datasets timm accelerate evaluate
12
 
 
 
 
13
  import gradio as gr
14
- from safetensors.torch import load_model
15
- from timm import create_model
16
  from huggingface_hub import hf_hub_download
 
17
  from datasets import load_dataset
18
  import torch
19
  import torchvision.transforms as T
@@ -21,18 +23,9 @@ import cv2
21
  import matplotlib.pyplot as plt
22
  import numpy as np
23
  from PIL import Image
24
- import os
25
-
26
- from langchain_community.document_loaders import TextLoader
27
- from langchain_community.vectorstores import FAISS
28
- from langchain_community.embeddings import HuggingFaceEmbeddings
29
- from langchain.text_splitter import CharacterTextSplitter
30
- from langchain_core.output_parsers import StrOutputParser
31
- from langchain_core.runnables import RunnablePassthrough
32
- from langchain_fireworks import ChatFireworks
33
- from langchain_core.prompts import ChatPromptTemplate
34
- from transformers import AutoModelForImageClassification, AutoImageProcessor
35
- from langchain import HuggingFacePipeline
36
 
37
  safe_tensors = "model.safetensors" #hf_hub_download(repo_id="subhuatharva/swim-224-base-satellite-image-classification", filename="model.safetensors")
38
 
@@ -58,63 +51,9 @@ def one_hot_decoding(labels):
58
  for i in id_list:
59
  true_labels.append(id2label[i])
60
  return true_labels
61
-
62
- title = "Satellite Image Classification for Landscape Analysis"
63
- description = """The bot was primarily trained to classify satellite images of the entire Amazon rainforest. You will need to upload satellite images and the bot will classify roads, forest, agriculure areas and the bot will return an analysis for the factors causing deforestation."""
64
-
65
- def ragChain():
66
- """
67
- function: creates a rag chain
68
- output: rag chain
69
- """
70
- loader = TextLoader("document.txt")
71
- docs = loader.load()
72
-
73
- text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
74
- docs = text_splitter.split_documents(docs)
75
-
76
- vectorstore = FAISS.load_local("faiss_index", embeddings = HuggingFaceEmbeddings(), allow_dangerous_deserialization = True)
77
- retriever = vectorstore.as_retriever(search_type = "similarity", search_kwargs = {"k": 5})
78
-
79
- api_key = os.getenv("FIREWORKS_API_KEY")
80
- llm = ChatFireworks(model="accounts/fireworks/models/mixtral-8x7b-instruct", api_key = api_key)
81
-
82
- prompt = ChatPromptTemplate.from_messages(
83
- [
84
- (
85
- "system",
86
- """You are a knowledgeable landscape deforestation analyst.
87
- """
88
- ),
89
- (
90
- "human",
91
- """First mention the detected labels only with short description.
92
- Provide not more than 4 precautionary measures which are related to the detected labels that can be taken to control deforestation.
93
- Don't include conversational messages.
94
- """,
95
- ),
96
-
97
- ("human", "{context}, {question}"),
98
- ]
99
- )
100
-
101
- rag_chain = (
102
- {
103
- "context": retriever,
104
- "question": RunnablePassthrough()
105
- }
106
- | prompt
107
- | llm
108
- | StrOutputParser()
109
- )
110
-
111
- return rag_chain
112
-
113
-
114
-
115
 
116
  def model_output(image):
117
-
118
  PIL_image = Image.fromarray(image.astype('uint8'), 'RGB')
119
 
120
  img_size = (224,224)
@@ -133,19 +72,8 @@ def model_output(image):
133
  pred_labels = one_hot_decoding(predictions)
134
  output_text = " ".join(pred_labels)
135
 
136
- query = f"Detected labels in the provided satellite image are {output_text}. Give information on the labels."
137
-
138
- return query
139
-
140
- def generate_response(rag_chain, query):
141
- """
142
- input: rag chain, query
143
- function: generates response using llm and knowledge base
144
- output: generated response by the llm
145
- """
146
- return rag_chain.invoke(f"{query}")
147
-
148
- app = gr.Interface(fn=main, inputs="image", outputs="text", title=title,
149
- description=description, examples=[["sample_images/train_142.jpg"], ["sample_images/train_75.jpg"],["sample_images/train_32.jpg"], ["sample_images/train_59.jpg"], ["sample_images/train_67.jpg"], ["sample_images/train_92.jpg"], ["sample_images/random_satellite_image.png"]])
150
- app.launch(share=True)
151
 
 
10
  #!pip install gradio --quiet
11
  #!pip install -Uq transformers datasets timm accelerate evaluate
12
 
13
+ import subprocess
14
+ # subprocess.run('pip3 install datasets timm cv2 huggingface_hub torch pillow matplotlib' ,shell=True)
15
+
16
  import gradio as gr
 
 
17
  from huggingface_hub import hf_hub_download
18
+ from safetensors.torch import load_model
19
  from datasets import load_dataset
20
  import torch
21
  import torchvision.transforms as T
 
23
  import matplotlib.pyplot as plt
24
  import numpy as np
25
  from PIL import Image
26
+ from timm import create_model
27
+
28
+
 
 
 
 
 
 
 
 
 
29
 
30
  safe_tensors = "model.safetensors" #hf_hub_download(repo_id="subhuatharva/swim-224-base-satellite-image-classification", filename="model.safetensors")
31
 
 
51
  for i in id_list:
52
  true_labels.append(id2label[i])
53
  return true_labels
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
 
55
  def model_output(image):
56
+ image = cv2.imread(image)
57
  PIL_image = Image.fromarray(image.astype('uint8'), 'RGB')
58
 
59
  img_size = (224,224)
 
72
  pred_labels = one_hot_decoding(predictions)
73
  output_text = " ".join(pred_labels)
74
 
75
+ return output_text
76
+
77
+ app = gr.Interface(fn=model_output, inputs="image", outputs="text")
78
+ app.launch(debug=True)
 
 
 
 
 
 
 
 
 
 
 
79
 
document.txt ADDED
@@ -0,0 +1,236 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {\rtf1\ansi\ansicpg1252\cocoartf2761
2
+ \cocoatextscaling0\cocoaplatform0{\fonttbl\f0\fswiss\fcharset0 Helvetica-Bold;\f1\fswiss\fcharset0 Helvetica;}
3
+ {\colortbl;\red255\green255\blue255;\red46\green49\blue51;\red255\green255\blue255;\red24\green25\blue27;
4
+ \red0\green0\blue0;}
5
+ {\*\expandedcolortbl;;\cssrgb\c23529\c25098\c26275;\cssrgb\c100000\c100000\c100000;\cssrgb\c12549\c12941\c14118;
6
+ \cssrgb\c0\c0\c0\c87059;}
7
+ \margl1440\margr1440\vieww11520\viewh8400\viewkind0
8
+ \deftab720
9
+ \pard\pardeftab720\sa320\partightenfactor0
10
+
11
+ \f0\b\fs37\fsmilli18667 \cf2 \cb3 \expnd0\expndtw0\kerning0
12
+ Description
13
+ \f1\b0\fs32 \cf0 \
14
+ \pard\pardeftab720\sa320\partightenfactor0
15
+
16
+ \fs37\fsmilli18667 \cf2 Deforestation\'a0is the purposeful clearing of forested land. Throughout history and into modern times, forests have been\'a0razed\'a0to make space for agriculture and animal grazing, and to obtain wood for fuel, manufacturing, and construction.
17
+ \fs32 \cf0 \
18
+ \pard\pardeftab720\sa240\partightenfactor0
19
+
20
+ \fs37\fsmilli18667 \cf2 Deforestation has greatly altered landscapes around the world. About 2,000 years ago, 80 percent of Western Europe was forested; today the figure is 34 percent. In North America, about half of the forests in the eastern part of the continent were cut down from the 1600s to the 1870s for timber and agriculture. China has lost great expanses of its forests over the past 4,000 years and now just over 20 percent of it is forested. Much of Earth\'92s farmland was once forests.
21
+ \fs32 \cf0 \
22
+
23
+ \fs37\fsmilli18667 \cf2 Today, the greatest amount of\'a0deforestation\'a0is occurring in tropical rainforests, aided by extensive road construction into regions that were once almost inaccessible. Building or upgrading roads into forests makes them more accessible for exploitation.\'a0Slash-and-burn\'a0agriculture is a big contributor to\'a0deforestation\'a0in the tropics. With this agricultural method, farmers burn large swaths of forest, allowing the ash to fertilize the land for crops. The land is only fertile for a few years, however, after which the farmers move on to repeat the process elsewhere. Tropical forests are also cleared to make way for logging, cattle ranching, and oil palm and rubber tree plantations.
24
+ \fs32 \cf0 \
25
+
26
+ \fs37\fsmilli18667 \cf2 Deforestation\'a0can result in more\'a0carbon dioxide\'a0being released into the atmosphere. That is because trees take in\'a0carbon dioxide\'a0from the air for\'a0photosynthesis, and carbon is locked chemically in their wood. When trees are burned, this carbon returns to the atmosphere as\'a0carbon dioxide. With fewer trees around to take in the\'a0carbon dioxide, this greenhouse gas accumulates in the atmosphere and accelerates global warming.
27
+ \fs32 \cf0 \
28
+
29
+ \fs37\fsmilli18667 \cf2 Deforestation\'a0also threatens the world\'92s\'a0biodiversity. Tropical forests are home to great numbers of animal and plant species. When forests are logged or burned, it can drive many of those species into extinction. Some scientists say we are already in the midst of a mass-extinction episode.
30
+ \fs32 \cf0 \
31
+
32
+ \fs37\fsmilli18667 \cf2 More immediately, the loss of trees from a forest can leave soil more prone to\'a0erosion. This causes the remaining plants to become more vulnerable to fire as the forest shifts from being a closed, moist environment to an open, dry one. While\'a0deforestation\'a0can be permanent, this is not always the case. In North America, for example, forests in many areas are returning thanks to\'a0conservation\'a0efforts.
33
+ \fs32 \cf0 \
34
+ \pard\pardeftab720\sa320\partightenfactor0
35
+
36
+ \f0\b\fs37\fsmilli18667 \cf4 Cloud Cover Labels
37
+ \f1\b0\fs32 \cf0 \
38
+ \pard\pardeftab720\sa320\partightenfactor0
39
+
40
+ \fs37\fsmilli18667 \cf2 These labels closely mirror what one would see in a local weather forecast: clear, partly cloudy, cloudy, and haze. For our purposes haze is defined as any image patch where atmospheric clouds are visible but they are not so opaque as to obscure the ground. Clear scenes show no evidence of clouds, and partly cloudy scenes can show opaque cloud cover over any portion of the image. Cloudy images have 90% of the chip obscured by opaque cloud cover.
41
+ \fs32 \cf0 \
42
+ \pard\pardeftab720\sa240\partightenfactor0
43
+
44
+ \f0\b\fs37\fsmilli18667 \cf4 Primary Rain Forest
45
+ \f1\b0\fs32 \cf0 \
46
+ \pard\pardeftab720\partightenfactor0
47
+
48
+ \fs37\fsmilli18667 \cf2 The overwhelming majority of the data set is labeled as "primary", which is shorthand for primary rainforest, or what is known colloquially as virgin forest. Generally speaking, the "primary" label was used for any area that exhibited dense tree cover. A primary forest is an untouched forest, most often within the context of logging activities, which should have never taken place in that forest area, whereas a secondary forest is a forest that has already been logged or disturbed in a significant way, by the activies of human beings.
49
+ \fs32 \cf0 \
50
+ \pard\pardeftab720\sa240\partightenfactor0
51
+
52
+ \f0\b\fs37\fsmilli18667 \cf4 Water (Rivers & Lakes)
53
+ \f1\b0\fs32 \cf0 \
54
+ \pard\pardeftab720\sa240\partightenfactor0
55
+
56
+ \fs37\fsmilli18667 \cf2 Waters are labels for rivers, reservoirs and oxbow lakes. Rivers often change their course and serve as highways deep into forest areas. The changing course of theses rivers creates new habitats but can also strand endangered river species. Reservoirs are artificial lakes used to commercial purposes. Oxbow lakes are the remains of the bend in the river. Oxbow lakes are still water lakes. This means that water does not flow into or out of them.
57
+ \fs32 \cf0 \
58
+ \pard\pardeftab720\sa240\partightenfactor0
59
+
60
+ \f0\b\fs37\fsmilli18667 \cf4 Habitation
61
+ \f1\b0\fs32 \cf0 \
62
+ \pard\pardeftab720\sa320\partightenfactor0
63
+
64
+ \fs37\fsmilli18667 \cf2 The habitation class label is used images appeared to contain human homes or buildings and man made structures. This includes anything from dense urban centers to rural villages along the banks of rivers.
65
+ \fs32 \cf0 \
66
+ \pard\pardeftab720\sa240\partightenfactor0
67
+
68
+ \f0\b\fs37\fsmilli18667 \cf4 Agriculture
69
+ \f1\b0\fs32 \cf0 \
70
+ \pard\pardeftab720\partightenfactor0
71
+
72
+ \fs37\fsmilli18667 \cf2 For the purposes of this dataset, agriculture is considered to be any land cleared of trees that is being used for agriculture or\'a0{\field{\*\fldinst{HYPERLINK "https://rainforestpartnership.org/the-beef-industry-and-deforestation/"}}{\fldrslt \cf4 \ul \ulc4 range land}}. Agricultural land requires cutting down forest and making up space for commercial growth of crops which is a major contributors to deforestation.
73
+ \fs32 \cf0 \
74
+ \pard\pardeftab720\sa320\partightenfactor0
75
+
76
+ \fs37\fsmilli18667 \cf2 \'a0
77
+ \fs32 \cf0 \
78
+ \pard\pardeftab720\sa240\partightenfactor0
79
+
80
+ \f0\b\fs37\fsmilli18667 \cf4 Road
81
+ \f1\b0\fs32 \cf0 \
82
+ \pard\pardeftab720\sa320\partightenfactor0
83
+
84
+ \fs37\fsmilli18667 \cf2 Roads are important for transportation but they also serve as drivers of deforestation. In particular, "fishbone" deforestation often follows new road construction, while smaller logging roads drive selective logging operations. For our data, all types of roads are labeled with a single "road" label. Some rivers look very similar to smaller logging roads, and consequently there may be some noise in this label. Analysis of the image using the near infrared band may prove useful in disambiguating the two classes.
85
+ \fs32 \cf0 \
86
+ \pard\pardeftab720\sa240\partightenfactor0
87
+
88
+ \f0\b\fs37\fsmilli18667 \cf4 Cultivation
89
+ \f1\b0\fs32 \cf0 \
90
+ \pard\pardeftab720\partightenfactor0
91
+
92
+ \fs37\fsmilli18667 \cf2 Shifting cultivation is a subset of agriculture that is very easy to see from space, and occurs in rural areas where individuals and families maintain farm plots for subsistence.\'a0 This type of agriculture is often found near smaller villages along major rivers, and at the outskirts of agricultural areas. It typically relies on non-mechanized labor, and covers relatively small areas.
93
+ \fs32 \cf0 \
94
+ \pard\pardeftab720\sa240\partightenfactor0
95
+
96
+ \f0\b\fs37\fsmilli18667 \cf4 Bare Ground
97
+ \f1\b0\fs32 \cf0 \
98
+ \pard\pardeftab720\partightenfactor0
99
+
100
+ \fs37\fsmilli18667 \cf2 Bare ground is a catch-all term used for naturally occuring tree free areas that aren't the result of human activity. Some of these areas occur naturally , while others may be the result from the source scenes containing small regions of biome.
101
+ \fs32 \cf0 \
102
+ \pard\pardeftab720\sa240\partightenfactor0
103
+
104
+ \f0\b\fs37\fsmilli18667 \cf4 Slash and Burn
105
+ \f1\b0\fs32 \cf0 \
106
+ \pard\pardeftab720\partightenfactor0
107
+
108
+ \fs37\fsmilli18667 \cf2 Slash-and-burn agriculture can be considered to be a subset of the shifting cultivation label and is used for areas that demonstrate recent burn events. This is to say that the shifting cultivation patches appear to have dark brown or black areas consistent with recent burning.
109
+ \fs32 \cf0 \
110
+ \pard\pardeftab720\sa240\partightenfactor0
111
+
112
+ \f0\b\fs37\fsmilli18667 \cf4 Selective Logging
113
+ \f1\b0\fs32 \cf0 \
114
+ \pard\pardeftab720\partightenfactor0
115
+
116
+ \fs37\fsmilli18667 \cf2 The selective logging label is used to cover the practice of selectively removing high value tree species from the rainforest for commercial applications. From space these images appears as winding dirt roads adjacent to bare brown patches in otherwise primary rain forest.
117
+ \fs32 \cf0 \
118
+ \pard\pardeftab720\sa240\partightenfactor0
119
+
120
+ \f0\b\fs37\fsmilli18667 \cf4 Blooming
121
+ \f1\b0\fs32 \cf0 \
122
+ \pard\pardeftab720\partightenfactor0
123
+
124
+ \fs37\fsmilli18667 \cf2 Blooming is a natural phenomenon found in landscape where particular species of flowering trees bloom, fruit, and flower at the same time to maximize the chances of cross pollination. These trees are quite large and these events can be seen from space.\'a0
125
+ \fs32 \cf0 \
126
+ \pard\pardeftab720\sa240\partightenfactor0
127
+
128
+ \f0\b\fs37\fsmilli18667 \cf4 Conventional Mining
129
+ \f1\b0\fs32 \cf0 \
130
+ \pard\pardeftab720\partightenfactor0
131
+
132
+ \fs37\fsmilli18667 \cf2 There are a number of large conventional mines in the Amazon basin and the number is\'a0{\field{\*\fldinst{HYPERLINK "https://www.wsj.com/articles/SB10001424127887324020804578150964211301692"}}{\fldrslt \cf4 \ul \ulc4 steadily growning}}. This label is used to classify large-scale legal mining operations.
133
+ \fs32 \cf0 \
134
+ \pard\pardeftab720\sa240\partightenfactor0
135
+
136
+ \f0\b\fs37\fsmilli18667 \cf4 "Artisinal" Mining
137
+ \f1\b0\fs32 \cf0 \
138
+ \pard\pardeftab720\partightenfactor0
139
+
140
+ \fs37\fsmilli18667 \cf2 Artisinal mining is a catch-all term for small scale mining operations. Gold deposits lace the deep, clay soils. Artisanal miners, sometimes\'a0{\field{\*\fldinst{HYPERLINK "https://www.nytimes.com/2016/07/26/world/americas/peru-illegal-gold-mining-latin-america.html?_r=0"}}{\fldrslt \cf4 \ul \ulc4 working illegally}}\'a0in land designated for conservation, slash through the forest and excavate deep pits near rivers. They pump a mud-water slurry into the river banks, blasting them away so that they can be processed further with mercury - which is used to separate out the gold. The denuded moonscape left behind takes centuries to recover.
141
+ \fs32 \cf0 \
142
+ \pard\pardeftab720\sa240\partightenfactor0
143
+
144
+ \f0\b\fs37\fsmilli18667 \cf4 Blow Down
145
+ \f1\b0\fs32 \cf0 \
146
+ \pard\pardeftab720\partightenfactor0
147
+
148
+ \fs37\fsmilli18667 \cf2 Blow down, also called\'a0{\field{\*\fldinst{HYPERLINK "https://en.wikipedia.org/wiki/Windthrow"}}{\fldrslt \cf4 \ul \ulc4 windthrow}}, is a naturally occurring phenomeno. Briefly, blow down events occur during\'a0{\field{\*\fldinst{HYPERLINK "https://en.wikipedia.org/wiki/Microburst"}}{\fldrslt \cf4 \ul \ulc4 microbursts}} where cold dry air from the Andes settles on top of warm moist air in the rainforest. The colder air punches a hole in the moist warm layer, and sinks down with incredible force and high speed (in excess of 100MPH). These high winds topple the larger rainforest trees, and the resulting open areas are visible from space. The open areas do not stay visible for along as plants in the understory rush in to take advantage of the sunlight.
149
+ \fs32 \cf0 \
150
+
151
+ \fs37\fsmilli18667 \cf2 \'a0
152
+ \fs32 \cf0 \
153
+ \pard\pardeftab720\partightenfactor0
154
+
155
+ \f0\b\fs37\fsmilli18667 \cf2 Prevention
156
+ \f1\b0\fs32 \cf0 \
157
+ \pard\pardeftab720\partightenfactor0
158
+
159
+ \fs37\fsmilli18667 \cf2 Deforestation is one of the most pressing environmental issues we face today, with vast tracts of forests disappearing at an alarming rate. It not only leads to the loss of habitat for countless species but also accelerates climate change due to the significant amounts of carbon dioxide stored in these ecosystems.\'a0
160
+ \fs32 \cf0 \
161
+
162
+ \fs37\fsmilli18667 \cf2 However, it's not an unsolvable problem. Each one of us can contribute to the solution. Below we have collected 15 practical ways that you can help stop deforestation and promote a more sustainable relationship with our planet's precious forests.
163
+ \fs32 \cf0 \
164
+
165
+ \fs37\fsmilli18667 \cf2 \'a0
166
+ \fs32 \cf0 \
167
+ \pard\pardeftab720\partightenfactor0
168
+
169
+ \f0\b\fs37\fsmilli18667 \cf2 1. Plant More Trees
170
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Engage in tree-planting initiatives in your community or through global organizations.
171
+ \fs32 \cf0 \
172
+
173
+ \f0\b\fs37\fsmilli18667 \cf2 2. Go Paperless
174
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Reduce paper consumption by going digital at home and in the office. When you do need to print, use both sides of the paper.
175
+ \fs32 \cf5 \
176
+
177
+ \f0\b\fs37\fsmilli18667 \cf2 3. Support Responsible Companies
178
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Choose to support companies that are committed to reducing deforestation and use sustainable practices.
179
+ \fs32 \cf5 \
180
+
181
+ \f0\b\fs37\fsmilli18667 \cf2 4. Buy Certified Wood Products
182
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Opt for wood or paper products that are certified by the Forest Stewardship Council (FSC) or similar organizations.
183
+ \fs32 \cf5 \
184
+
185
+ \f0\b\fs37\fsmilli18667 \cf2 5. Buy and Use Responsibly
186
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Consider your purchases carefully. Buy only what you need, and prioritize items with less packaging or reusable containers.
187
+ \fs32 \cf5 \
188
+
189
+ \f0\b\fs37\fsmilli18667 \cf2 6. Avoid Palm Oil
190
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Palm oil production contributes significantly to deforestation. Check labels and avoid products containing palm oil where possible.
191
+ \fs32 \cf5 \
192
+
193
+ \f0\b\fs37\fsmilli18667 \cf2 7. Recycle and Buy Recycled Products
194
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Support the recycling economy by buying recycled products and recycling them again after use.
195
+ \fs32 \cf5 \
196
+
197
+ \f0\b\fs37\fsmilli18667 \cf2 8. Educate Others
198
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Raise awareness about deforestation in your social circle and community. The more people know, the more they can help.
199
+ \fs32 \cf5 \
200
+
201
+ \f0\b\fs37\fsmilli18667 \cf2 9. Support Sustainable Agriculture
202
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Buy from local farmers who practice sustainable agriculture, helping to reduce the demand for deforested land.
203
+ \fs32 \cf5 \
204
+
205
+ \f0\b\fs37\fsmilli18667 \cf2 10. Advocate for Forest Protection Policies
206
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Support policies and politicians that prioritize forest conservation and responsible land use.
207
+ \fs32 \cf5 \
208
+
209
+ \f0\b\fs37\fsmilli18667 \cf2 11. Support Indigenous Rights
210
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Support Indigenous communities who often are excellent stewards of the forests they inhabit.
211
+ \fs32 \cf5 \
212
+
213
+ \f0\b\fs37\fsmilli18667 \cf2 12. Offset Your Carbon Footprint
214
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Consider supporting carbon offset programs that protect existing forests or plant new trees.
215
+ \fs32 \cf5 \
216
+
217
+ \f0\b\fs37\fsmilli18667 \cf2 13. Reduce Meat Consumption
218
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Livestock farming is a major cause of deforestation. Consider reducing your meat intake or choose products from sustainable farms.
219
+ \fs32 \cf5 \
220
+
221
+ \f0\b\fs37\fsmilli18667 \cf2 14. Use Renewable Energy
222
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Using renewable energy reduces the need for deforestation caused by mining and drilling.
223
+ \fs32 \cf5 \
224
+
225
+ \f0\b\fs37\fsmilli18667 \cf2 15. Volunteer or Donate
226
+ \f1\b0 \cb1 \uc0\u8232 \cb3 Consider donating your time or money to organizations that work to prevent deforestation.
227
+ \fs32 \cf5 \
228
+ \pard\pardeftab720\sa320\partightenfactor0
229
+
230
+ \fs37\fsmilli18667 \cf2 \'a0
231
+ \fs32 \cf0 \
232
+ \pard\pardeftab720\sa213\partightenfactor0
233
+
234
+ \fs37\fsmilli18667 \cf0 \cb1 \'a0
235
+ \fs32 \
236
+ }
requirements.txt CHANGED
@@ -4,6 +4,4 @@ opencv-python
4
  huggingface_hub
5
  torch
6
  pillow
7
- matplotlib
8
- langchain
9
- langchain-fireworks
 
4
  huggingface_hub
5
  torch
6
  pillow
7
+ matplotlib
 
 
sample_images/random_satellite_image.png DELETED
Binary file (295 kB)
 
~$cumentation.docx ADDED
Binary file (162 Bytes). View file