Programmer
تحلیل کتابخونه ی deepFace : این کتابخونه ی سبک پایتون برای تشخیص چهره، تحلیل احساسات، سن، جنسیت و نژاد استفاده میشه حالت ساده (default mode): در حالت پیشفرض، DeepFace از detector OpenCV استفاده میکنه که سریع هست اما دقتش در تشخیص چهرههای پیچیده (مثل…
تشخیص احساسات :
در این کد چهره ی شما توسط دوربین گرفته میشه و حس لحظه ای شما رو در بالای تصویر سمت چپ می نویسه و با زدن دکمه ی q از کیبورد از صفحه خارج میشه
کدش رو با تنظیماتی که توضیح دادم، براتون قرار میدم، حتما تست کنید و نتیجه رو بهم بگید
برای نصب
CODE
در این کد چهره ی شما توسط دوربین گرفته میشه و حس لحظه ای شما رو در بالای تصویر سمت چپ می نویسه و با زدن دکمه ی q از کیبورد از صفحه خارج میشه
کدش رو با تنظیماتی که توضیح دادم، براتون قرار میدم، حتما تست کنید و نتیجه رو بهم بگید
برای نصب
pip install opencv-python deepface mediapipe tensorflow
CODE
import cv2
from deepface import DeepFace
# باز کردن وبکم
cap = cv2.VideoCapture(0)
# بررسی اینکه وبکم به درستی باز شده باشد
if not cap.isOpened():
print("خطا: نمیتوان وبکم را باز کرد.")
exit()
while True:
# خواندن فریم از وبکم
ret, frame = cap.read()
if not ret:
print("خطا: نمیتوان فریم را خواند.")
break
try:
# تحلیل احساسات با DeepFace و backend = MediaPipe
result = DeepFace.analyze(
img_path=frame,
actions=['emotion'],
detector_backend='mediapipe',
enforce_detection=False
)
# دریافت احساس غالب
dominant_emotion = result[0]['dominant_emotion']
# افزودن متن احساس غالب به فریم
cv2.putText(frame, dominant_emotion, (20, 50),
cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
except Exception as e:
print(f"خطا در تحلیل احساسات: {e}")
continue
# نمایش فریم
cv2.imshow("Emotion Detection", frame)
# خروج با فشار دادن کلید 'q'
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# آزادسازی منابع
cap.release()
cv2.destroyAllWindows()
🔥3❤2👌1
📚مقالک
داکر چیه؟
فرض کن یه برنامهنویس یه اپ نوشته (مثلاً یه سایت یا یه ربات)، حالا میخواد بده به تو تا روی سیستم خودت اجراش کنی.
اما تو که اجراش میکنی، ارور میده! چون مثلاً نسخهی پایتون فرق داره، یا یه کتابخونه نصب نیست، یا سیستمعامل فرق داره.
اینجا داکر وارد میشه!
داکر یه ابزار برای ساخت "بستهی قابل حمل" از برنامته.
یعنی داکر برنامت رو بههمراه همهی وابستگیهاش (مثل سیستمعامل، کتابخونهها، تنظیمات و نسخهها) توی یه محیط بسته به نام کانتینر (Container) قرار میده.
توسعهدهندگان داکر و فرصتهای شغلی
🔹 چرا مهارت در داکر ارزشمنده؟
در دنیای فناوری امروز، شرکتها بهدنبال افزایش سرعت، مقیاسپذیری و کارایی در توسعه و اجرای نرمافزارها هستن.
اینجاست که داکر نقش کلیدی داره، چون با استفاده از کانتینرها، میشه:
• برنامهها رو راحتتر انتقال و اجرا کرد،
• منابع سرور رو بهتر مدیریت کرد،
• و فرایند توسعه تا استقرار (DevOps) رو سریعتر و هماهنگتر انجام داد.
بنابراین، مهندسانی که بتونن برنامهها رو داکرایز (Dockerize) کنن، یعنی اونا رو داخل کانتینر قرار بدن، و همچنین در زمینهی مدیریت و مانیتورینگ کانتینرها مهارت داشته باشن، الان خیلی پرطرفدار هستن.
🔹 تقاضای بازار کار
با توجه به اینکه شرکتهای بیشتری به سمت کانتینریزاسیون (Containerization) میرن، نیاز به متخصصان داکر مدام داره زیاد میشه — مخصوصاً در حوزههایی مثل:
• DevOps و Cloud Engineering
• Backend Development
• Infrastructure Automation
• Site Reliability Engineering (SRE)
شرکتهای بزرگ فناوری، استارتاپها و سازمانهای ابری (مثل AWS، Google Cloud، Azure) بهطور فعال دنبال افراد با مهارت داکر هستن.
💰 انتظارات حقوق و دستمزد
بر اساس دادههای گزارشهای شغلی:
• 🔸 مبتدیها (Junior / Entry-level): حدود ۷۰ تا ۹۰ هزار دلار در سال
• 🔸 توسعهدهندگان میانرده: حدود ۹۰ تا ۱۳۰ هزار دلار در سال
• 🔸 متخصصان ارشد یا DevOps Engineers حرفهای: بیش از ۱۵۰ هزار دلار در سال
البته این اعداد بسته به کشور، شهر، نوع شرکت و سطح تجربه متغیرن.
در کشورهای پیشرفته (مثل آمریکا، کانادا، آلمان و استرالیا) تقاضا و حقوق بهمراتب بالاتره.
داکر چیه؟
فرض کن یه برنامهنویس یه اپ نوشته (مثلاً یه سایت یا یه ربات)، حالا میخواد بده به تو تا روی سیستم خودت اجراش کنی.
اما تو که اجراش میکنی، ارور میده! چون مثلاً نسخهی پایتون فرق داره، یا یه کتابخونه نصب نیست، یا سیستمعامل فرق داره.
اینجا داکر وارد میشه!
داکر یه ابزار برای ساخت "بستهی قابل حمل" از برنامته.
یعنی داکر برنامت رو بههمراه همهی وابستگیهاش (مثل سیستمعامل، کتابخونهها، تنظیمات و نسخهها) توی یه محیط بسته به نام کانتینر (Container) قرار میده.
توسعهدهندگان داکر و فرصتهای شغلی
🔹 چرا مهارت در داکر ارزشمنده؟
در دنیای فناوری امروز، شرکتها بهدنبال افزایش سرعت، مقیاسپذیری و کارایی در توسعه و اجرای نرمافزارها هستن.
اینجاست که داکر نقش کلیدی داره، چون با استفاده از کانتینرها، میشه:
• برنامهها رو راحتتر انتقال و اجرا کرد،
• منابع سرور رو بهتر مدیریت کرد،
• و فرایند توسعه تا استقرار (DevOps) رو سریعتر و هماهنگتر انجام داد.
بنابراین، مهندسانی که بتونن برنامهها رو داکرایز (Dockerize) کنن، یعنی اونا رو داخل کانتینر قرار بدن، و همچنین در زمینهی مدیریت و مانیتورینگ کانتینرها مهارت داشته باشن، الان خیلی پرطرفدار هستن.
🔹 تقاضای بازار کار
با توجه به اینکه شرکتهای بیشتری به سمت کانتینریزاسیون (Containerization) میرن، نیاز به متخصصان داکر مدام داره زیاد میشه — مخصوصاً در حوزههایی مثل:
• DevOps و Cloud Engineering
• Backend Development
• Infrastructure Automation
• Site Reliability Engineering (SRE)
شرکتهای بزرگ فناوری، استارتاپها و سازمانهای ابری (مثل AWS، Google Cloud، Azure) بهطور فعال دنبال افراد با مهارت داکر هستن.
💰 انتظارات حقوق و دستمزد
بر اساس دادههای گزارشهای شغلی:
• 🔸 مبتدیها (Junior / Entry-level): حدود ۷۰ تا ۹۰ هزار دلار در سال
• 🔸 توسعهدهندگان میانرده: حدود ۹۰ تا ۱۳۰ هزار دلار در سال
• 🔸 متخصصان ارشد یا DevOps Engineers حرفهای: بیش از ۱۵۰ هزار دلار در سال
البته این اعداد بسته به کشور، شهر، نوع شرکت و سطح تجربه متغیرن.
در کشورهای پیشرفته (مثل آمریکا، کانادا، آلمان و استرالیا) تقاضا و حقوق بهمراتب بالاتره.
❤8✍1🎅1
📚مقالک ( کدوم الگوریتم بهتره)
خب Big O چیست؟
مبحث Big O Notation : یک روش ریاضی است برای اینکه بفهمیم یک الگوریتم چقدر سریع یا کند رشد میکند وقتی ورودی زیاد میشود.
یعنی میخواهیم بدانیم:
> «اگر تعداد دادهها زیاد شود، زمان اجرای برنامه چطور تغییر میکند؟»
🎯 هدف Big O
وقتی برنامهای مینویسی، فقط مهم نیست که کار کند؛ مهم است که با داده زیاد هم خوب کار کند.
مثلاً فرض کن برنامهای داری که لیستی از اسامی را میگیرد و دنبال یک اسم خاص میگردد.
اگر لیست ۵ تا اسم باشد، فرقی نمیکند، اما اگر لیست ۵ میلیون اسم باشد، حالا مهم میشود که الگوریتمت چقدر کارآمد است.
اینجاست که Big O وارد میشود تا رشد زمان را توصیف کند.
💡 ایده اصلی:
در Big O، ما به مقادیر بزرگ n (یعنی ورودی زیاد) نگاه میکنیم.
و فقط به رشد تابع توجه داریم، نه عدد دقیق.
مثلاً:
ما عددهای ثابت (مثل +5 یا ×2) را نادیده میگیریم چون با افزایش داده تأثیر زیادی ندارند.
🔢 مثال ۱: ثابت (O(1))
فرض کن در یک آرایه به یک خانه خاص دسترسی پیدا میکنی:
در هر حال فقط یک کار انجام میدهی، مهم نیست آرایه ۴ تا عنصر داشته باشد یا ۴ میلیون تا.
⏱ زمان همیشه ثابت است → O(1)
📘 یعنی با بزرگ شدن داده، زمان تغییر نمیکند.
🔁 مثال ۲: خطی (O(n))
فرض کن بخواهی تمام عناصر آرایه را جمع بزنی:
اگر آرایه ۱۰ تا عدد دارد، حلقه ۱۰ بار اجرا میشود.
اگر ۱۰۰ تا عدد دارد، حلقه ۱۰۰ بار اجرا میشود.
⏱ زمان با اندازه داده افزایش مییابد → O(n)
📘 یعنی اگر ورودی دو برابر شود، زمان هم دو برابر میشود.
🔁 مثال ۳: درجه دوم (O(n²))
فرض کن در آرایه دو حلقه تودرتو داری:
اگر آرایه ۱۰ تا عنصر دارد → ۱۰×۱۰ = ۱۰۰ تکرار
اگر ۱۰۰ تا عنصر دارد → ۱۰۰×۱۰۰ = ۱۰,۰۰۰ تکرار
⏱ زمان به صورت n² رشد میکند → O(n²)
📘 یعنی با دو برابر شدن داده، زمان چهار برابر میشود.
🧮 مثال ۴: لگاریتمی (O(log n))
فرض کن عددی را در لیست مرتب جستجو میکنی (مثل جستجوی دودویی):
# Binary Search
در هر گام، لیست را نصف میکنی.
اگر ۱۰۰۰ تا داده داری:
مرحله ۱ → نصف میکنی (۵۰۰)
مرحله ۲ → نصف (۲۵۰)
مرحله ۳ → نصف (۱۲۵) ... تا زمانی که برسد به ۱
تعداد مراحل تقریباً log₂(n) است.
⏱ رشد بسیار آرام دارد → O(log n)
📘 یعنی حتی اگر داده میلیونبرابر شود، فقط چند گام بیشتر طول میکشد.
🌀 مثال ۵: فاکتوریلی (O(n!))
فرض کن میخواهی همهی حالتهای ممکن را امتحان کنی (مثل مرتب کردن همهی ترکیبهای یک لیست).
مثلاً برای ۵ عنصر، حالتها میشود:
5 × 4 × 3 × 2 × 1 = 120
و برای ۱۰ عنصر:
10! = 3,628,800
⏱ رشد بسیار وحشتناک سریع دارد → O(n!)
📘 یعنی این نوع الگوریتم برای داده زیاد تقریباً غیرممکن است.
📊 مقایسهی رشد زمانها
نوع نام توضیح کوتاه سرعت
O(1)
ثابت مستقل از داده خیلی سریع
O(log n)
لگاریتمی رشد خیلی کند ⚡ عالی
O(n)
خطی متناسب با داده 🙂 متوسط
O(n log n)
شبهخطی کمی کندتر از خطی 😐 قابل قبول
O(n²)
درجه دوم رشد شدید 🐢 کند
O(2ⁿ)
نمایی رشد انفجاری 🧨 بسیار کند
O(n!)
فاکتوریلی حالتهای ممکن 💀 غیرعملی
برای Big O مقایسهی الگوریتمهاست، نه اندازهگیری دقیق زمان.
ما میخواهیم بدانیم با بزرگ شدن ورودی، الگوریتم چه رفتاری دارد:
اگر رشد کند باشد → الگوریتم خوب
اگر رشد سریع باشد → الگوریتم ضعیف
خب Big O چیست؟
مبحث Big O Notation : یک روش ریاضی است برای اینکه بفهمیم یک الگوریتم چقدر سریع یا کند رشد میکند وقتی ورودی زیاد میشود.
یعنی میخواهیم بدانیم:
> «اگر تعداد دادهها زیاد شود، زمان اجرای برنامه چطور تغییر میکند؟»
🎯 هدف Big O
وقتی برنامهای مینویسی، فقط مهم نیست که کار کند؛ مهم است که با داده زیاد هم خوب کار کند.
مثلاً فرض کن برنامهای داری که لیستی از اسامی را میگیرد و دنبال یک اسم خاص میگردد.
اگر لیست ۵ تا اسم باشد، فرقی نمیکند، اما اگر لیست ۵ میلیون اسم باشد، حالا مهم میشود که الگوریتمت چقدر کارآمد است.
اینجاست که Big O وارد میشود تا رشد زمان را توصیف کند.
💡 ایده اصلی:
در Big O، ما به مقادیر بزرگ n (یعنی ورودی زیاد) نگاه میکنیم.
و فقط به رشد تابع توجه داریم، نه عدد دقیق.
مثلاً:
ما عددهای ثابت (مثل +5 یا ×2) را نادیده میگیریم چون با افزایش داده تأثیر زیادی ندارند.
🔢 مثال ۱: ثابت (O(1))
فرض کن در یک آرایه به یک خانه خاص دسترسی پیدا میکنی:
arr = [10, 20, 30, 40]
print(arr[2])
در هر حال فقط یک کار انجام میدهی، مهم نیست آرایه ۴ تا عنصر داشته باشد یا ۴ میلیون تا.
⏱ زمان همیشه ثابت است → O(1)
📘 یعنی با بزرگ شدن داده، زمان تغییر نمیکند.
🔁 مثال ۲: خطی (O(n))
فرض کن بخواهی تمام عناصر آرایه را جمع بزنی:
sum = 0
for num in arr:
sum += num
اگر آرایه ۱۰ تا عدد دارد، حلقه ۱۰ بار اجرا میشود.
اگر ۱۰۰ تا عدد دارد، حلقه ۱۰۰ بار اجرا میشود.
⏱ زمان با اندازه داده افزایش مییابد → O(n)
📘 یعنی اگر ورودی دو برابر شود، زمان هم دو برابر میشود.
🔁 مثال ۳: درجه دوم (O(n²))
فرض کن در آرایه دو حلقه تودرتو داری:
for i in arr:
for j in arr:
print(i, j)
اگر آرایه ۱۰ تا عنصر دارد → ۱۰×۱۰ = ۱۰۰ تکرار
اگر ۱۰۰ تا عنصر دارد → ۱۰۰×۱۰۰ = ۱۰,۰۰۰ تکرار
⏱ زمان به صورت n² رشد میکند → O(n²)
📘 یعنی با دو برابر شدن داده، زمان چهار برابر میشود.
🧮 مثال ۴: لگاریتمی (O(log n))
فرض کن عددی را در لیست مرتب جستجو میکنی (مثل جستجوی دودویی):
# Binary Search
در هر گام، لیست را نصف میکنی.
اگر ۱۰۰۰ تا داده داری:
مرحله ۱ → نصف میکنی (۵۰۰)
مرحله ۲ → نصف (۲۵۰)
مرحله ۳ → نصف (۱۲۵) ... تا زمانی که برسد به ۱
تعداد مراحل تقریباً log₂(n) است.
⏱ رشد بسیار آرام دارد → O(log n)
📘 یعنی حتی اگر داده میلیونبرابر شود، فقط چند گام بیشتر طول میکشد.
🌀 مثال ۵: فاکتوریلی (O(n!))
فرض کن میخواهی همهی حالتهای ممکن را امتحان کنی (مثل مرتب کردن همهی ترکیبهای یک لیست).
مثلاً برای ۵ عنصر، حالتها میشود:
5 × 4 × 3 × 2 × 1 = 120
و برای ۱۰ عنصر:
10! = 3,628,800
⏱ رشد بسیار وحشتناک سریع دارد → O(n!)
📘 یعنی این نوع الگوریتم برای داده زیاد تقریباً غیرممکن است.
📊 مقایسهی رشد زمانها
نوع نام توضیح کوتاه سرعت
O(1)
ثابت مستقل از داده خیلی سریع
O(log n)
لگاریتمی رشد خیلی کند ⚡ عالی
O(n)
خطی متناسب با داده 🙂 متوسط
O(n log n)
شبهخطی کمی کندتر از خطی 😐 قابل قبول
O(n²)
درجه دوم رشد شدید 🐢 کند
O(2ⁿ)
نمایی رشد انفجاری 🧨 بسیار کند
O(n!)
فاکتوریلی حالتهای ممکن 💀 غیرعملی
برای Big O مقایسهی الگوریتمهاست، نه اندازهگیری دقیق زمان.
ما میخواهیم بدانیم با بزرگ شدن ورودی، الگوریتم چه رفتاری دارد:
اگر رشد کند باشد → الگوریتم خوب
اگر رشد سریع باشد → الگوریتم ضعیف
❤7👍2
Media is too big
VIEW IN TELEGRAM
فرض کنید ویدئویی به زبان انگلیسی دارید که زیر نویس فارسی نداره و زبانتون هم به اندازه ی ترجمه کردن ویدئو خوب نیست
این کد دقیقاً چیکار میکنه؟
🎧 صدای داخل دسکتاپ رو ضبط میکنه
🧠 بعدش صدا رو میفرسته به مدل Whisper برای تبدیل گفتار به متن
🌍 و در نهایت متن رو به زبان فارسی ترجمه میکنه
فقط ی نکته حتما نرم افزار های زیر رو نصب کنید هنگام اجرای برنامه باید
Virtual Audio Cable
فعال باشه
⚙️ سرعت: متوسط
💬 کیفیت ترجمه: 7 از 10
📎فایل پروژه
این کد دقیقاً چیکار میکنه؟
🎧 صدای داخل دسکتاپ رو ضبط میکنه
🧠 بعدش صدا رو میفرسته به مدل Whisper برای تبدیل گفتار به متن
🌍 و در نهایت متن رو به زبان فارسی ترجمه میکنه
فقط ی نکته حتما نرم افزار های زیر رو نصب کنید هنگام اجرای برنامه باید
Virtual Audio Cable
فعال باشه
⚙️ سرعت: متوسط
💬 کیفیت ترجمه: 7 از 10
📎فایل پروژه
❤9✍1👍1
Programmer
فرض کنید ویدئویی به زبان انگلیسی دارید که زیر نویس فارسی نداره و زبانتون هم به اندازه ی ترجمه کردن ویدئو خوب نیست این کد دقیقاً چیکار میکنه؟ 🎧 صدای داخل دسکتاپ رو ضبط میکنه 🧠 بعدش صدا رو میفرسته به مدل Whisper برای تبدیل گفتار به متن 🌍 و در نهایت متن…
برای اجرای این برنامه اول این دو رو نصب کنید 🙏🙏
۱. FFmpeg
این برنامه FFmpeg یک ابزار متنبازه برای پردازش فایلهای صوتی و تصویری
کاربرد :
تبدیل فرمتها (مثلاً MP3 به WAV یا MP4 به AVI)
ضبط صدا و تصویر
استخراج صدا از ویدئو
اعمال افکتهای ساده یا پیچیده روی صدا و تصویر
نصب روی ویندوز:
به سایت رسمی FFmpeg برو:
https://ffmpeg.org/download.html
نسخهی Windows (Static Build) را دانلود کن.
فایل ZIP را استخراج کن، مثلاً به مسیر C:\ffmpeg\.
مسیر C:\ffmpeg\bin را به Environment Variables ویندوز اضافه کن تا از خط فرمان (Command Prompt) قابل دسترسی باشد.
در CMD تایپ کن:
ffmpeg -version
اگر اطلاعات نسخه نمایش داده شد، نصب درست انجام شده.
۲. Virtual Audio Cable (VAC)
این برنامه Virtual Audio Cable یک نرمافزار برای ایجاد دستگاه صوتی مجازی در ویندوزه . با این ابزار میتونی صدا را بین برنامهها منتقل یا روت کنی بدون اینکه نیاز به کابل فیزیکی باشه
کاربردها:
ضبط صدای کامپیوتر
انتقال صدا از یک نرمافزار به نرمافزار دیگر (مثلاً از موزیک پلیر به OBS)
میکس صداهای مختلف
نصب:
به سایت رسمی برو:
https://vac.muzychenko.net/en/
نسخهی مناسب ویندوز رو دانلود و نصب کن.
پس از نصب، یک یا چند دستگاه صوتی مجازی ایجاد میشود (مثلاً Line 1).
در تنظیمات صوتی برنامهها، میتوانی این خط مجازی را به عنوان ورودی یا خروجی صدا انتخاب کنی.
۱. FFmpeg
این برنامه FFmpeg یک ابزار متنبازه برای پردازش فایلهای صوتی و تصویری
کاربرد :
تبدیل فرمتها (مثلاً MP3 به WAV یا MP4 به AVI)
ضبط صدا و تصویر
استخراج صدا از ویدئو
اعمال افکتهای ساده یا پیچیده روی صدا و تصویر
نصب روی ویندوز:
به سایت رسمی FFmpeg برو:
https://ffmpeg.org/download.html
نسخهی Windows (Static Build) را دانلود کن.
فایل ZIP را استخراج کن، مثلاً به مسیر C:\ffmpeg\.
مسیر C:\ffmpeg\bin را به Environment Variables ویندوز اضافه کن تا از خط فرمان (Command Prompt) قابل دسترسی باشد.
در CMD تایپ کن:
ffmpeg -version
اگر اطلاعات نسخه نمایش داده شد، نصب درست انجام شده.
۲. Virtual Audio Cable (VAC)
این برنامه Virtual Audio Cable یک نرمافزار برای ایجاد دستگاه صوتی مجازی در ویندوزه . با این ابزار میتونی صدا را بین برنامهها منتقل یا روت کنی بدون اینکه نیاز به کابل فیزیکی باشه
کاربردها:
ضبط صدای کامپیوتر
انتقال صدا از یک نرمافزار به نرمافزار دیگر (مثلاً از موزیک پلیر به OBS)
میکس صداهای مختلف
نصب:
به سایت رسمی برو:
https://vac.muzychenko.net/en/
نسخهی مناسب ویندوز رو دانلود و نصب کن.
پس از نصب، یک یا چند دستگاه صوتی مجازی ایجاد میشود (مثلاً Line 1).
در تنظیمات صوتی برنامهها، میتوانی این خط مجازی را به عنوان ورودی یا خروجی صدا انتخاب کنی.
👍2❤1
⏰ معرفی :
مقاله «StreamingVLM» از MIT راهی تازه برای فهم بیپایان ویدیوها معرفی میکند. بهجای پردازش سنگین همه فریمها، مدل فقط بخشهای مهم حافظه را نگه میدارد و مثل انسان جریان تصویر را لحظهبهلحظه دنبال میکند. با روشی ساده در آموزش، مدل یاد میگیرد همیشه در حال تماشاست، نه مرور گذشته.
نتیجه؟
درک پایدار، سریع و زنده از ویدیوهایی با ساعتهای طولانی .به طور کلی در مدلهای معمولی، ما کل ورودی رو یکجا میدیم (مثلاً کل ویدیو یا کل جمله).
🫂 به زبان ساده
مدل بتونه ورودیهای بیپایان یا خیلی بلند رو در لحظه بخونه،
بدون اینکه حافظه یا محاسبهاش بینهایت رشد کنه.
مثلا :
ویدیوها جریان بیپایان دارن (مثل دوربین نظارتی)
صداها یا گفتار هایی که زنده هستن (tts یا asr)
متن هم میتونه بیوقفه بیاد (چت، ترجمه همزمان، و غیره)
مشکل اینه که attention در ترنسفورمرها هزینهاش O(n²) هست و اگه کل ورودی رو نگه داری، مدل خفه میشه از حجم داده.
حالا StreamingVLM راهحلش این بود:
حافظه رو خلاصه نگه دار، و فقط بخشهای کلیدی (recent + sinks + context) رو نگه دار
https://huggingface.co/papers/2510.09608
مقاله «StreamingVLM» از MIT راهی تازه برای فهم بیپایان ویدیوها معرفی میکند. بهجای پردازش سنگین همه فریمها، مدل فقط بخشهای مهم حافظه را نگه میدارد و مثل انسان جریان تصویر را لحظهبهلحظه دنبال میکند. با روشی ساده در آموزش، مدل یاد میگیرد همیشه در حال تماشاست، نه مرور گذشته.
نتیجه؟
درک پایدار، سریع و زنده از ویدیوهایی با ساعتهای طولانی .به طور کلی در مدلهای معمولی، ما کل ورودی رو یکجا میدیم (مثلاً کل ویدیو یا کل جمله).
🫂 به زبان ساده
مدل بتونه ورودیهای بیپایان یا خیلی بلند رو در لحظه بخونه،
بدون اینکه حافظه یا محاسبهاش بینهایت رشد کنه.
مثلا :
ویدیوها جریان بیپایان دارن (مثل دوربین نظارتی)
صداها یا گفتار هایی که زنده هستن (tts یا asr)
متن هم میتونه بیوقفه بیاد (چت، ترجمه همزمان، و غیره)
مشکل اینه که attention در ترنسفورمرها هزینهاش O(n²) هست و اگه کل ورودی رو نگه داری، مدل خفه میشه از حجم داده.
حالا StreamingVLM راهحلش این بود:
حافظه رو خلاصه نگه دار، و فقط بخشهای کلیدی (recent + sinks + context) رو نگه دار
https://huggingface.co/papers/2510.09608
huggingface.co
Paper page - StreamingVLM: Real-Time Understanding for Infinite Video Streams
Join the discussion on this paper page
❤3🕊1
برای دوستان رباتیک
🤖 تشخیص اشیاء با YOLOv8
این پروژه یک نگاه به مدله YOLOv8 (You Only Look Once) هستش ؛
مدلی که تنها با یک بار نگاه کردن به تصویر، تمام اشیاء رو شناسایی میکنه
با استفاده از YOLO و OpenCV میتونید:
✅ اشیاء رو در تصاویر و ویدیوها تشخیص بدید
✅ موقعیت دقیق هر شیء (Bounding Box) رو ببینید
✅ حتی پروژههاتون رو به حالت Real-Time (زنده) گسترش بدید!
دسترسی به کد و توضیحات مدل
https://github.com/ArtemisAsadii/yolov8-object-detection.git
#YOLO #AI #MachineLearning #ComputerVision #Python #Ultralytics
🤖 تشخیص اشیاء با YOLOv8
این پروژه یک نگاه به مدله YOLOv8 (You Only Look Once) هستش ؛
مدلی که تنها با یک بار نگاه کردن به تصویر، تمام اشیاء رو شناسایی میکنه
با استفاده از YOLO و OpenCV میتونید:
✅ اشیاء رو در تصاویر و ویدیوها تشخیص بدید
✅ موقعیت دقیق هر شیء (Bounding Box) رو ببینید
✅ حتی پروژههاتون رو به حالت Real-Time (زنده) گسترش بدید!
دسترسی به کد و توضیحات مدل
https://github.com/ArtemisAsadii/yolov8-object-detection.git
#YOLO #AI #MachineLearning #ComputerVision #Python #Ultralytics
GitHub
GitHub - ArtemisAsadii/yolov8-object-detection: Object detection project using YOLOv8 and OpenCV for real-time image analysis
Object detection project using YOLOv8 and OpenCV for real-time image analysis - ArtemisAsadii/yolov8-object-detection
❤5👌1
Programmer
برای دوستان رباتیک 🤖 تشخیص اشیاء با YOLOv8 این پروژه یک نگاه به مدله YOLOv8 (You Only Look Once) هستش ؛ مدلی که تنها با یک بار نگاه کردن به تصویر، تمام اشیاء رو شناسایی میکنه با استفاده از YOLO و OpenCV میتونید: ✅ اشیاء رو در تصاویر و ویدیوها تشخیص…
Media is too big
VIEW IN TELEGRAM
این هم یک نمونه از تشخیص اشیاء این مدل
در اینجا ما یک ویدئو به مدل دادیم و با کمک این مدل تونستیم اشیاء داخل ویدئو رو تشخيص بدیم
البته فاجعه ی انسانی داخل ویدئو هم موضوع قابل بحثی هستش 😂🙏
در اینجا ما یک ویدئو به مدل دادیم و با کمک این مدل تونستیم اشیاء داخل ویدئو رو تشخيص بدیم
البته فاجعه ی انسانی داخل ویدئو هم موضوع قابل بحثی هستش 😂🙏
🔥3❤2🦄2
📚 مقالک
چرا بعضی کتابخونهها توی Google Colab نصب نمیشن؟
گاهی اوقات هر کاری میکنیم، یه کتابخونه نصب نمیشه!
یکی از دلایل اصلیش اینه که نسخهی Python فعلی با اون کتابخونه سازگار نیست.
بهصورت پیشفرض، Colab از Python 3.12 استفاده میکنه،
اما بعضی کتابخونهها (مثل TensorFlow، PyTorch یا OpenCV قدیمی) فقط با نسخههای پایینتر مثل 3.10 درست کار میکنن.
🔹 ۱. بررسی نسخه فعلی Python:
اگه خروجی چیزی مثل Python 3.12.x بود یعنی Colab داره از نسخه ۳.۱۲ استفاده میکنه.
🔹 ۲. نصب Python 3.10 و ابزارهای لازم:
🔹 ۳. ساخت محیط مجازی با Python 3.10:
🔹 ۴. تست فعالسازی محیط (اختیاری):
اگه خروجی Python 3.10.x بود یعنی محیط مجازی درست ساخته شده
چرا بعضی کتابخونهها توی Google Colab نصب نمیشن؟
گاهی اوقات هر کاری میکنیم، یه کتابخونه نصب نمیشه!
یکی از دلایل اصلیش اینه که نسخهی Python فعلی با اون کتابخونه سازگار نیست.
بهصورت پیشفرض، Colab از Python 3.12 استفاده میکنه،
اما بعضی کتابخونهها (مثل TensorFlow، PyTorch یا OpenCV قدیمی) فقط با نسخههای پایینتر مثل 3.10 درست کار میکنن.
🔹 ۱. بررسی نسخه فعلی Python:
!python --version
اگه خروجی چیزی مثل Python 3.12.x بود یعنی Colab داره از نسخه ۳.۱۲ استفاده میکنه.
🔹 ۲. نصب Python 3.10 و ابزارهای لازم:
!sudo apt-get update
!sudo apt-get install python3.10-venv python3.10-distutils -y
🔹 ۳. ساخت محیط مجازی با Python 3.10:
!python3.10 -m venv py310
🔹 ۴. تست فعالسازی محیط (اختیاری):
!source py310/bin/activate
!python --version
اگه خروجی Python 3.10.x بود یعنی محیط مجازی درست ساخته شده
❤3👍1
Agent.pdf
1.5 MB
فهرست مطالب جزوه :
1) What is an agent?
تعریف ایجنتها و تفاوت آنها با نرمافزارهای خودکار سنتی.
2) When should you build an agent?
چه زمانی ی agent میسازیم
3) Agent design foundations
سه مؤلفه اصلی طراحی ایجنتها: مدل (LLM)، ابزارها و دستورالعملها.
4) Guardrails
مکانیزمهای امنیتی برای جلوگیری از رفتارهای ناخواسته
5) مثال و ساخت agent با کمک agent SDK
6) در آخر هم agent SDK رو با Langgraph, langchain مقايسه کردم
1) What is an agent?
تعریف ایجنتها و تفاوت آنها با نرمافزارهای خودکار سنتی.
2) When should you build an agent?
چه زمانی ی agent میسازیم
3) Agent design foundations
سه مؤلفه اصلی طراحی ایجنتها: مدل (LLM)، ابزارها و دستورالعملها.
4) Guardrails
مکانیزمهای امنیتی برای جلوگیری از رفتارهای ناخواسته
5) مثال و ساخت agent با کمک agent SDK
6) در آخر هم agent SDK رو با Langgraph, langchain مقايسه کردم
❤4
دوستان رباتیکم برای استفاده از B4A بدون نیاز به نصب android studio
فایل های zip زیر را دانلود کنید و بعد از دانلود مراحل زیر رو برای استفاده از این برنامه اجرا کنید
📎لینک اول
📎 لینک دوم
خود برنامه
برای دانلود command tools هم به این 📎لینک مراجعه کنید
به پایین صفحه بروید، قسمت
Command line tools only
فایل مناسب سیستم عامل خودتون رو پیدا کرده و دانلود کنید
مراحل اجرا :
1️⃣ نصب Java (OpenJDK 19 + OpenJFX)
فایل jdk-19 رو پس از دانلود در
مسیر پیشنهادی: C:\Java قرار دهید
یعنی داخل c ی فایل با نام Java بساز و اون فایل رو داخلش استخراج کن
نیازی به نصب نداره فقط استخراج کنید
2️⃣ نصب Android SDK + منابع لازم
Android SDK Command line tools (13114758)
Required resources (7_25)
هر دو رو در C:\Android استخراج کن
نیازی به اجرای B4A SDK Manager نیست مگر برای emulator.
3️⃣ نصب و تنظیم B4A
نسخه کامل B4A Full Version رو از لینک بالا دانلود کن.
بعد از اجرا، برو به:
Tools → Configure Paths
و تنظیم کن:
javac.exe → C:\java\jdk-19.0.2\bin\javac.exe
android.jar → C:\Android\platforms\android-36\android.jar
اختیاری (برای emulator):
sdkmanager.bat → C:\Android\cmdline-tools\bin\sdkmanager.bat
🔘 لایسنسها رو قبول کن.
نصب و اتصال B4A-Bridge (پیشنهادی)
📲 از Google Play یا AppGallery بگیر: B4A Bridge
یا مستقیماً apk رو از سایت رسمی دانلود کن.
🔓 نصب از منابع ناشناس رو فعال کن (Settings > Security).
📡 گوشی و B4A رو وصل کن:
Tools → B4A Bridge → Connect
حالا میتونی اولین app رباتیک اندرویدت رو بسازی 😎👌
فایل های zip زیر را دانلود کنید و بعد از دانلود مراحل زیر رو برای استفاده از این برنامه اجرا کنید
📎لینک اول
📎 لینک دوم
خود برنامه
برای دانلود command tools هم به این 📎لینک مراجعه کنید
به پایین صفحه بروید، قسمت
Command line tools only
فایل مناسب سیستم عامل خودتون رو پیدا کرده و دانلود کنید
مراحل اجرا :
1️⃣ نصب Java (OpenJDK 19 + OpenJFX)
فایل jdk-19 رو پس از دانلود در
مسیر پیشنهادی: C:\Java قرار دهید
یعنی داخل c ی فایل با نام Java بساز و اون فایل رو داخلش استخراج کن
نیازی به نصب نداره فقط استخراج کنید
2️⃣ نصب Android SDK + منابع لازم
Android SDK Command line tools (13114758)
Required resources (7_25)
هر دو رو در C:\Android استخراج کن
نیازی به اجرای B4A SDK Manager نیست مگر برای emulator.
3️⃣ نصب و تنظیم B4A
نسخه کامل B4A Full Version رو از لینک بالا دانلود کن.
بعد از اجرا، برو به:
Tools → Configure Paths
و تنظیم کن:
javac.exe → C:\java\jdk-19.0.2\bin\javac.exe
android.jar → C:\Android\platforms\android-36\android.jar
اختیاری (برای emulator):
sdkmanager.bat → C:\Android\cmdline-tools\bin\sdkmanager.bat
🔘 لایسنسها رو قبول کن.
نصب و اتصال B4A-Bridge (پیشنهادی)
📲 از Google Play یا AppGallery بگیر: B4A Bridge
یا مستقیماً apk رو از سایت رسمی دانلود کن.
🔓 نصب از منابع ناشناس رو فعال کن (Settings > Security).
📡 گوشی و B4A رو وصل کن:
Tools → B4A Bridge → Connect
حالا میتونی اولین app رباتیک اندرویدت رو بسازی 😎👌
❤2
Traefik.docx
684.6 KB
موضوع Traefik یک Reverse Proxy و Load Balancer مدرنه که جلوی سرویسها قرار میگیره و درخواستهای ورودی رو با استفاده از مسیریابی به سرویس مناسب هدایت میکنه.
این کار رو با کشف خودکار سرویسها (مثل Docker، Kubernetes، یا سایر ارائهدهندگان) انجام میده، گواهیهای HTTPS رو مدیریت میکنه و امکان مقیاسپذیری و مدیریت ترافیک رو بدون نیاز به راهاندازی مجدد فراهم میکنه.
این کار رو با کشف خودکار سرویسها (مثل Docker، Kubernetes، یا سایر ارائهدهندگان) انجام میده، گواهیهای HTTPS رو مدیریت میکنه و امکان مقیاسپذیری و مدیریت ترافیک رو بدون نیاز به راهاندازی مجدد فراهم میکنه.
✍2❤2👍1
ایلان ماسک: تا ۲ سال دیگر موبایل شما مستقیم به ماهوارههای استارلینک متصل خواهد شد
https://share.google/6WGLsafMNYAxC2ZnZ
https://share.google/6WGLsafMNYAxC2ZnZ
اکوایران
ببینید/ ایلان ماسک: تا ۲ سال دیگر موبایل شما مستقیم به ماهوارههای استارلینک متصل خواهد شد
ایلان ماسک از برنامه استارلینک برای اتصال مستقیم گوشیهای موبایل به اینترنت ماهوارهای طی دو سال آینده خبر داد.
🦄5
docker.pdf
1.4 MB
بچه ها این جزوه ی داکر، مقدماتی از مباحث رو براتون توضیح میده + اینکه اگر تمایل به خوندن جزوه ندارید ی آموزش پیدا کردم که استادش داکر رو خوب توضیح میده
لينک آموزش در مکتب خونه
لينک آموزش در مکتب خونه
🤩3🙏2❤1👍1
Fundamental Math for AI & ML.pdf
2.6 MB
جزوه مباحث ریاضی برای یادگیری هوش مصنوعی و یادگیری ماشین
توی این جزوه سعی کردم مهمترین مباحث ریاضی مورد نیاز برای ورود به دنیای AI و ML رو به زبانی ساده، مرحلهبهمرحله و همراه با مثال و تمرین توضیح بدم.در انتهای جزوه هم معماریهای مختلف مدلها همراه با مثال آورده شده تا بتونید مفاهیم رو عملی تمرین کنید
توی این جزوه سعی کردم مهمترین مباحث ریاضی مورد نیاز برای ورود به دنیای AI و ML رو به زبانی ساده، مرحلهبهمرحله و همراه با مثال و تمرین توضیح بدم.در انتهای جزوه هم معماریهای مختلف مدلها همراه با مثال آورده شده تا بتونید مفاهیم رو عملی تمرین کنید
❤7🦄2
Programmer
آموزش Opencv - بخش دوم ( قسمت دوم) ۱. ایجاد یک تصویر خالی سه حالت اصلی برای ایجاد تصویر داریم: import cv2 import numpy as np import random # تصویر مشکی img_black = np.zeros((500, 500, 3), dtype=np.uint8) # تصویر سفید img_white = np.ones((500, 500, 3),…
OpenCvPart2.pdf
784 KB
آموزش opencv بخش سوم :
مباحث قرار گرفته در فایل :
مبحث اول : cv.dnn چیه
مبحث دوم : Opencv در YOLO
مبحث سوم : Local Binary Patterns
مبحث چهارم : CNN و Deepface برای شناسایی چهره
مبحث پنجم : آشنایی با harrcascaded در opencv
مبحث ششم : پروژه ی آخر کد کامل تشخیص چهره ( در اینجا از چهره فیلم گرفته میشه، مدل آموزش داده میشه و در آخر از مدل آموزش دیده برای تشخیص چهره ی شما استفاده میشه)
فایل پروژه ی آخر
مباحث قرار گرفته در فایل :
مبحث اول : cv.dnn چیه
مبحث دوم : Opencv در YOLO
مبحث سوم : Local Binary Patterns
مبحث چهارم : CNN و Deepface برای شناسایی چهره
مبحث پنجم : آشنایی با harrcascaded در opencv
مبحث ششم : پروژه ی آخر کد کامل تشخیص چهره ( در اینجا از چهره فیلم گرفته میشه، مدل آموزش داده میشه و در آخر از مدل آموزش دیده برای تشخیص چهره ی شما استفاده میشه)
فایل پروژه ی آخر
❤6
📚مقالک
آشنایی با چند دستور وضعیت سرعت و کیفیت اتصال اینترنت در cmd
استفاده از دستور ping
تست سرعت از طریق PowerShell با Speedtest.net
بعد از نصب، دستور زیر را اجرا کن:
استفاده از دستور netsh wlan show interfaces
برای دیدن سرعت ارتباط وایفای (بین لپتاپ و مودم):
اما برای تست سرعت حرفه ای و راحت این سایت رو پیشنهاد می کنم
https://www.speedtest.net/result/18456842820
برای تست امنیت
https://www.virustotal.com/
کاربرد های لینک بالا :
✅بررسی لینکها و وبسایتها
✅بررسی فایلها (File Scan)
✅بررسی آدرس IP یا دامنه
✅بررسی فایلهای اجرایی و نرمافزارها
آشنایی با چند دستور وضعیت سرعت و کیفیت اتصال اینترنت در cmd
استفاده از دستور ping
ping google.com
تست سرعت از طریق PowerShell با Speedtest.net
Install-Module -Name Speedtest-cli
بعد از نصب، دستور زیر را اجرا کن:
speedtest
استفاده از دستور netsh wlan show interfaces
برای دیدن سرعت ارتباط وایفای (بین لپتاپ و مودم):
netsh wlan show interfaces
اما برای تست سرعت حرفه ای و راحت این سایت رو پیشنهاد می کنم
https://www.speedtest.net/result/18456842820
برای تست امنیت
https://www.virustotal.com/
کاربرد های لینک بالا :
✅بررسی لینکها و وبسایتها
✅بررسی فایلها (File Scan)
✅بررسی آدرس IP یا دامنه
✅بررسی فایلهای اجرایی و نرمافزارها
❤6👍1
PyTorch_part1.pdf
1 MB
این جزوه شامل مفاهیم پایه ی Autograd و Gradient در PyTorch، یاداوری از شبکه های عصبی ، حلقه ی آموزش، Epoch،Mini-Batch ،Batch و... ست
ی جور جزوه مقدماتی طور هستش که فقط با مباحث و اصطلاحات و Pytorch آشنا بشید
ی جور جزوه مقدماتی طور هستش که فقط با مباحث و اصطلاحات و Pytorch آشنا بشید
❤8🕊1