از پارسکدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.
دوازده روز پیش منتشر شده
تعداد بازدید: 43
کد پروژه: 603156
شرح پروژه
سلام وقت بخیر دوتا کد از هوش مصنوعی گرفتممیخوام ببینم سالم هستن و اگر سالم هستن میخوام انسانی بشه و از حالت مشخص بودن هوش مصنوعی در بیاد
# image SVD compression - my own implementation for Exercise 10
# (trying to keep it simple & readable)
import numpy as np
from PIL import Image
import os
def cmsvd():
# گرفتن مسیر تصویر از کاربر
img_path = input("Image path (grayscale): ").strip()
# باز کردن تصویر – اگر رنگی باشد خودم خاکستریاش میکنم
try:
img = Image.open(img_path).convert("L")
except:
print("Could not open the image. Check the path again.")
return
# تبدیل تصویر به آرایه
A = np.array(img).astype(float)
# کاربر خودش k را انتخاب کند (میزان فشرده سازی)
print("Enter compression rank (k). Smaller = more compression.")
k = int(input("k = "))
# انجام SVD - با full_matrices=False چون ماتریس ها کوچک تر می شوند
U, S, VT = np.linalg.svd(A, full_matrices=False)
# فقط k مولفه اول را نگه میدارم، بقیه حذف میشوند
U_k = U[:, :k]
S_k = np.diag(S[:k])
VT_k = VT[:k, :]
# ذخیره کردن ماتریسها کنار تصویر اصلی
folder = os.path.dirname(img_path)
name = os.path.splitext(os.path.basename(img_path))[0]
np.save(os.path.join(folder, f"{name}_U_k.npy"), U_k)
np.save(os.path.join(folder, f"{name}_S_k.npy"), S_k)
np.save(os.path.join(folder, f"{name}_VT_k.npy"), VT_k)
print("Saved U_k, S_k, VT_k.")
# بازسازی تصویر با استفاده از جزءهای فشردهشده
A_rec = U_k @ S_k @ VT_k
A_rec = np.clip(A_rec, 0, 255).astype(np.uint8)
# ذخیره تصویر نهایی
out_path = os.path.join(folder, f"{name}_compressed_{k}.png")
Image.fromarray(A_rec).save(out_path)
print("Compressed image saved at:", out_path)
--------------------------------------------------------------------------------------------------------------
import numpy as np
from PIL import Image
import os
def cmsvd():
# گرفتن مسیر تصویر
path = input("Enter image path: ")
# باز کردن تصویر و تبدیل به grayscale
img = Image.open(path).convert("L")
A = np.array(img)
# گرفتن مقدار k از کاربر
k = int(input("Enter k (rank for compression): "))
# انجام SVD
U, S, VT = np.linalg.svd(A, full_matrices=False)
# انتخاب k مقدار اول
U_k = U[:, :k]
S_k = np.diag(S[:k])
VT_k = VT[:k, :]
# بازسازی تصویر
A_new = U_k @ S_k @ VT_k
# محدود کردن مقدار پیکسلها
A_new = np.clip(A_new, 0, 255)
# تبدیل به تصویر
new_img = Image.fromarray(A_new.astype(np.uint8))
# ساخت نام فایل خروجی
folder = os.path.dirname(path)
name = os.path.splitext(os.path.basename(path))[0]
out = os.path.join(folder, name + "_compressed.png")
# ذخیره تصویر
new_img.save(out)
print("Compressed image saved.")
if __name__ == "__main__":
cmsvd()
این پروژه شامل 1 فایل مهم است، لطفا قبل از ارسال پیشنهاد حتما نسبت به بررسی این فایل اقدام فرمایید.
مهارت ها و تخصص های مورد نیاز
مهلت برای انجام
1روز
وضعیت مناقصه
بسته
درباره کارفرما
عضویت دو سال پیش
نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟
قادر به انجام این پروژه هستید؟
متأسفانه مهلت ارسال پیشنهاد این پروژه به پایان رسیده و پروژه بسته شده است؛ اما فرصتهای متعددی در سایت موجود میباشد.
دوازده روز پیش منتشر شده
به رایگان یک حساب کاربری بسازید
مهارتها و تخصصهای خود را ثبت کنید، رزومه و نمونهکارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.
به شیوهای که دوست دارید کار کنید
برای پروژههای دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصتهای شغلی منحصر به فرد دسترسی پیدا کنید.
با اطمینان دستمزد دریافت کنید
از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.
میخواهید شروع به کار کنید؟
یک حساب کاربری بسازید
بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارتهای شما
است.
پیدا کردن کار (پروژه)
تماشای دمو روش کار