thesparshsaxena commited on
Commit
f7d9bc5
·
1 Parent(s): fc11d1b

Corrupt images and delete function fix (#12)

Browse files

- PR Done (bc03529a6e25c4c42eb3014d76dbec61d45ee864)

Dockerfile CHANGED
@@ -18,8 +18,6 @@ RUN apt-get update && apt-get install -y \
18
  zstd \
19
  && rm -rf /var/lib/apt/lists/*
20
 
21
- RUN curl -fsSL https://ollama.com/install.sh | sh
22
-
23
  COPY requirements.txt ./
24
 
25
  RUN pip3 install --no-cache-dir -r requirements.txt
 
18
  zstd \
19
  && rm -rf /var/lib/apt/lists/*
20
 
 
 
21
  COPY requirements.txt ./
22
 
23
  RUN pip3 install --no-cache-dir -r requirements.txt
docker-entrypoint.sh CHANGED
@@ -29,24 +29,6 @@ elif [ -e "$APP_DIR/encrypted_images" ] && [ ! -L "$APP_DIR/encrypted_images" ];
29
  fi
30
  ln -sfn "$IMAGE_DIR" "$APP_DIR/encrypted_images"
31
 
32
- ollama serve &
33
- OLLAMA_PID="$!"
34
-
35
- for attempt in $(seq 1 60); do
36
- if ollama list >/dev/null 2>&1; then
37
- break
38
- fi
39
- if [ "$attempt" -eq 60 ]; then
40
- echo "Ollama did not become ready in time." >&2
41
- exit 1
42
- fi
43
- sleep 1
44
- done
45
-
46
- ollama pull embeddinggemma:latest
47
-
48
- trap 'kill "$OLLAMA_PID" 2>/dev/null || true' EXIT
49
-
50
  exec streamlit run Homepage.py \
51
  --server.port=8501 \
52
  --server.address=0.0.0.0 \
 
29
  fi
30
  ln -sfn "$IMAGE_DIR" "$APP_DIR/encrypted_images"
31
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  exec streamlit run Homepage.py \
33
  --server.port=8501 \
34
  --server.address=0.0.0.0 \
repository/Search_Image.py CHANGED
@@ -60,8 +60,8 @@ if not search_query:
60
  decrypted_image = fernet.decrypt(encrypted_image)
61
  image = Image.open(BytesIO(decrypted_image)).convert("RGB")
62
  st.image(image, width="stretch")
63
- if st.button("Delete", key=metadata["filename"]):
64
- db.delete(ids=[results["ids"][i + j]])
65
  if os.path.exists(metadata["filepath"]):
66
  os.remove(metadata["filepath"])
67
 
@@ -167,7 +167,7 @@ else:
167
  f"Combined: {data['combined_score']:.2f}"
168
  )
169
  )
170
- if st.button("Delete", key=metadata["filename"]):
171
  db.delete(ids=[metadata["id"]])
172
  if os.path.exists(metadata["filepath"]):
173
  os.remove(metadata["filepath"])
 
60
  decrypted_image = fernet.decrypt(encrypted_image)
61
  image = Image.open(BytesIO(decrypted_image)).convert("RGB")
62
  st.image(image, width="stretch")
63
+ if st.button("Delete", key=metadata["id"]):
64
+ db.delete(ids=[metadata["id"]])
65
  if os.path.exists(metadata["filepath"]):
66
  os.remove(metadata["filepath"])
67
 
 
167
  f"Combined: {data['combined_score']:.2f}"
168
  )
169
  )
170
+ if st.button("Delete", key=f"delete_{metadata['id']}"):
171
  db.delete(ids=[metadata["id"]])
172
  if os.path.exists(metadata["filepath"]):
173
  os.remove(metadata["filepath"])
repository/Upload_Image.py CHANGED
@@ -28,7 +28,11 @@ uploaded_files = st.file_uploader("Upload your images", accept_multiple_files=Tr
28
  progress_text = "Operation in progress. Please wait."
29
  progress_bar = st.progress(0, text=progress_text)
30
  for percent_complete, uploaded_file in enumerate(uploaded_files, start=1):
31
- image = Image.open(uploaded_file).convert("RGB")
 
 
 
 
32
  start_time = time.time()
33
  buffer = BytesIO()
34
  image.save(buffer, format="PNG")
@@ -53,6 +57,7 @@ for percent_complete, uploaded_file in enumerate(uploaded_files, start=1):
53
 
54
  # metadata
55
  metadata = {
 
56
  "filename": uploaded_file.name,
57
  "filetype": uploaded_file.type,
58
  "filesize": uploaded_file.size,
 
28
  progress_text = "Operation in progress. Please wait."
29
  progress_bar = st.progress(0, text=progress_text)
30
  for percent_complete, uploaded_file in enumerate(uploaded_files, start=1):
31
+ try:
32
+ image = Image.open(uploaded_file).convert("RGB")
33
+ except Exception as e:
34
+ st.error(f"Error occurred while opening {uploaded_file.name}. Skipping this file.")
35
+ continue
36
  start_time = time.time()
37
  buffer = BytesIO()
38
  image.save(buffer, format="PNG")
 
57
 
58
  # metadata
59
  metadata = {
60
+ "id": id,
61
  "filename": uploaded_file.name,
62
  "filetype": uploaded_file.type,
63
  "filesize": uploaded_file.size,