Programmer – Telegram
Programmer
388 subscribers
45 photos
37 videos
29 files
72 links
این کانال در حوزه های وب ، رباتیک، هوش مصنوعی، ربات تلگرام و... فعالیت دارد، به طور کلی سعی دارم جزوات، کتاب ها و مقالاتی که مطالعه کردم رو با شما به اشتراک بذارم

گروه مربوط به هوش مصنوعی 👇

https://news.1rj.ru/str/Artificial_Intelligence21
Download Telegram
Programmer
زبان جدید یاد بگیر : قسمت چهارم : فرمت دهی در پایتون و جاوا 🐍 ( floot) جاوا (Java): فرمت‌دهی با printf public class Main {     public static void main(String[] args) {         float f = 1234.5678f;         double d = -98765.4321;         System.out.printf("ساده:…
زبان جدید یاد بگیر  :

قسمت پنجم :

✍️ بخش اول: گرفتن ورودی از کاربر با Scanner و System.in

برای اینکه برنامه جاوا بتونه از کاربر ورودی بگیره، از کلاس Scanner استفاده می‌کنیم:

import java.util.Scanner;

بالا, اول کار اسکنر رو import کن

Scanner input = new Scanner(System.in);

در اینجا:

در System.in یعنی ورودی از کیبورد گرفته بشه.

اگر بخوای از منبع دیگه‌ای ورودی بگیری:

از فایل:
 new Scanner(new File("input.txt"))

از متن ثابت:
new Scanner(new StringReader("Hello"))

از بایت‌ها:
new Scanner(new ByteArrayInputStream(...))

اما برای بیشتر برنامه‌ها، همون System.in برای کار با کاربر کافیه.

✍️ بخش دوم: دستور switch

برای بررسی چند حالت مختلف از یک متغیر، به جای ifهای تکراری، از switch استفاده می‌کنیم.

🧑‍💻 ساختار کلی:
switch (متغیر) {
  case 1:
    // دستورات
    break;
  case 2:
    // دستورات
    break;
  default:
  
// در صورت عدم تطابق با هیچ

}

توضیحات :

خب در قسمت متغیر شما میتونید از کیبورد مقدار رو بگیرید با دستور Scanner
یا خودتون یک مقدار از قبل مشخص کنید
اینجا برسی میکنه اگر مقدار جلوی عبارت case با مقدار متغیر برابر بود دستور زیر اون case رو اجرا میکنه

اگر break نذاری چی میشه؟ 🧐

پشت سر هم، همه رو اجرا میکنه

مثال :

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in); // دریافت ورودی از کیبورد

        System.out.print("عدد روز هفته را وارد کنید (1 تا 7): ");
        int n = input.nextInt(); // خواندن عدد وارد شده

        String day;

        switch (n) {
            case 1:
                day = "شنبه";
                break;
            case 2:
                day = "یک‌شنبه";
                break;
            case 3:
                day = "دوشنبه";
                break;
            case 4:
                day = "سه‌شنبه";
                break;
            case 5:
                day = "چهارشنبه";
                break;
            case 6:
                day = "پنج‌شنبه";
                break;
            case 7:
                day = "جمعه";
                break;
            default:
                day = "عدد نامعتبر است!";
        }

        System.out.println("نتیجه: " + day);
    }
}
21💘1🦄1
قبل اين که چت بات های حرفه ای بیان، این بزرگوار کمک حال خیلی ها بود🥲
البته من هنوز ازش استفاده میکنم 😶‍🌫️
👍421💅1
This media is not supported in your browser
VIEW IN TELEGRAM
یکی از نرم افزار هایی که خیلی از استفاده کردنش لذت میبرم سالیدورکزه
ولی خب فرض کن شما طراحی کردی و میخوای مدل سه بعدی رو داخل سایت بارگذاری کنی، اینجاست که از three.js استفاده میکنی
ولی فرمت stl سالیدورکز باید تبدیل بشه

در ادامه توضیح میدم چی کار باید انجام بدین تا به فرمت مناسب تبدیلش کنید

فرمت مناسب برای استفاده در Three.js:

فرمت مناسب؟

STL
فقط مش خالی، بدون رنگ و متریال
OBJ+MTL
ساده و قدیمی، متریال جداست
FBX
سنگین و با پشتیبانی از انیمیشن
GLB / glTF
بهترین انتخاب، فشرده، با متریال و انیمیشن


بهترین انتخاب برای سایت: GLB


سرعت سایت چطور میشه؟

مدل‌های سنگین = لود کند

حتماً باید:

پلی‌گان‌ها رو کم کنی (ریتوپولوژی)

از glb استفاده کنی (سبک و سریع)

بافت و متریال رو درست تنظیم کنی


🛠️ مراحل کلی تبدیل:

1. خروجی گرفتن از SolidWorks به STL یا STEP


2. وارد کردن در Blender


3. تنظیم نور، متریال، انیمیشن (در صورت نیاز)


4. خروجی گرفتن به .glb
42🙏2👌2🦄1
Media is too big
VIEW IN TELEGRAM
خیلی وقت میشه طراحی سایت نذاشتم 🤝😎
42
خب دوستان فکر کنم شنیدین مکتب خونه 100 دوره رو رایگان گذاشته
البته یکی از دوره هایی که رایگان شده رو میتونید با کد HAMDELI رایگان دریافت کنید

روش کار به چه صورت؟

اول برید آموزش رو انتخاب کنید

دوم داخل خود آموزش یک باکس آبی رنگ هست، تیک دسترسی کامل رو بردارید

سوم کد تخفیف رو وارد کنید

و اون رو تهیه کنید

که دوره ی هک و امنیت جادی
ماشین لرنینگ
جنگو
و...
هم داخلش هست

لیست دوره ها رو میتونید از لینک زیر ببینید

لینک...
82
Programmer
تمرینات سه سطحی برای بخش اول تمرین 1 - آسون 🔹 هدف: تمرین خواندن، نمایش و تبدیل تصویر به حالت خاکستری و Resize 🔸 شرح تمرین: یک تصویر از کامپیوترت انتخاب کن. با استفاده از OpenCV این کارها رو انجام بده: 1. تصویر رو بخون و نشون بده 2. اون رو به خاکستری…
آموزش OpenCV - بخش دوم (قسمت اول)

خواندن ویدئو از فایل:

در این قسمت قصد داریم ویدئو را فریم به فریم بخونیم و نمایش بدیم

1. ابتدا فایل ویدئو را با کمک تابع VideoCapture بارگذاری می‌کنیم.
2. سپس در یک حلقه، هر فریم را می‌خوانیم، هر فریم در متغیر frame ذخیره می‌شود

3. اگر خواندن موفق بود، فریم را نمایش می‌دهیم با دستور imshow

4. اگر کلید q فشار داده شود، حلقه متوقف می‌شود ( یعنی ویدئو متوقف می‌شود)

5. در پایان منابع آزاد شده و تمام پنجره‌ها بسته می‌شوند با کم دستور destroyAllwindows


خب دستور isOpened اینجا چی میگه ؟

در اصل اون چک میکنه ببینه وب کم یا دوربین روشنه با اگر بود وار حلقه میشه
چون اگر True بذاریم بجاش و دوربین شناسایی نشه برامون خطا بر میگردونه

کد نمونه:
import cv2

بارگذاری ویدئو از فایل
cap = cv2.VideoCapture('video.mp4')

while cap.isOpened():
ret, frame = cap.read()
if not ret:
break
cv2.imshow('Video', frame)
خروج با زدن کلید q
if cv2.waitKey(25) & 0xFF == ord('q'):
break

cap.release()
cv2.destroyAllWindows()

نکته:
اگر فایل وجود نداشته باشه یا به پایان فیلم برسه، مقدار ret برابر False هستش .

همزمان ضبط فیلم و ذخیره آن:

برای ضبط همزمان فیلم از دوربین (وبکم) و ذخیره آن، باید از کدک مناسب استفاده کنیم. کدک (Codec) مخفف عبارت "Coder-Decoder" است که وظیفه فشرده‌سازی و بازگشایی داده‌های تصویری را بر عهده دارد.

در اینجا نمونه کدی برای ضبط تصویر از وبکم و ذخیره آن آورده شده است:

import cv2

cap = cv2.VideoCapture(0)

تعیین کدک مورد نظر (در اینجا XVID)
fourcc = cv2.VideoWriter_fourcc(*'XVID')
تعریف VideoWriter برای ذخیره فایل خروجی
out = cv2.VideoWriter('output.avi', fourcc, 25.0, (640, 480))

while cap.isOpened():
ret, frame = cap.read()
if ret:
نوشتن فریم در فایل خروجی
out.write(frame)
نمایش فریم در پنجره
cv2.imshow('Webcam', frame)
خروج با زدن کلید q
if cv2.waitKey(1) & 0xFF == ord('q'):
break
else:
break

cap.release()
out.release()
cv2.destroyAllWindows()

نکات مهم:

- قبل از شروع ضبط، باید عرض و ارتفاع فریم‌ها مشخص شود؛ این مقادیر باید با ابعاد واقعی تصویر مطابقت داشته باشد.
- برای تعیین عرض و ارتفاع هر فریم می‌توانید از cap.get(cv2.CAP_PROP_FRAME_WIDTH) و cap.get(cv2.CAP_PROP_FRAME_HEIGHT) استفاده کنید.

- اطمینان حاصل کنید که کدک مورد استفاده روی سیستم شما نصب شده است.

توضیحات بیشتر درباره کدک‌ها:

- کدک‌ها جریانی از داده‌های تصویری هستند که وظیفه فشرده‌سازی یا بازگشایی آنها را بر عهده دارند.
- هنگام ضبط فیلم، باید نوع کدک مناسب انتخاب شود تا کیفیت مطلوب حفظ شود.
31😍1😘1
Forwarded from codepedia (Mahsa)
تفاوت Run و Run as administrator 😁


گزینه Run: اجرای برنامه با دسترسی معمولی کاربر.

گزینه Run as Administrator: اجرای برنامه با دسترسی مدیریتی (admin)، یعنی برنامه می‌تونه به فایل‌ها و تنظیمات سیستمی دسترسی داشته باشه.

🆔 @code_pedia
🤣51
Programmer
آموزش OpenCV - بخش دوم (قسمت اول) خواندن ویدئو از فایل: در این قسمت قصد داریم ویدئو را فریم به فریم بخونیم و نمایش بدیم 1. ابتدا فایل ویدئو را با کمک تابع VideoCapture بارگذاری می‌کنیم. 2. سپس در یک حلقه، هر فریم را می‌خوانیم، هر فریم در متغیر frame ذخیره…
آموزش 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), dtype=np.uint8) * 255

# تصویر با رنگ رندوم
img_random = np.random.randint(0, 256, (500, 500, 3), dtype=np.uint8)

۲. ترسیم خط (cv2.line)
# cv2.line(image, start_point, end_point, color, thickness)
cv2.line(img_black, (50, 50), (450, 50), (0, 255, 0), 3) 

# خط سبز از نقطه (50,50) تا (450,50)

۳. ترسیم دایره (cv2.circle)
# cv2.circle(image, center, radius, color, thickness)
cv2.circle(img_black, (250, 250), 100, (255, 0, 0), 5)
  # دایره آبی با شعاع 100
cv2.circle(img_black, (250, 250), 50, (0, 0, 255), -1)
  # دایره قرمز پر شده

🔹 وقتی thickness = -1 باشه، شکل پر کشیده میشه.

۴. ترسیم مستطیل (cv2.rectangle)
# cv2.rectangle(image, top_left, bottom_right, color, thickness)
cv2.rectangle(img_black, (100, 100), (400, 400), (0, 255, 255), 2)  # مستطیل زرد

۵. نمایش تصویر
cv2.imshow("Shapes", img_black)
cv2.waitKey(0)
cv2.destroyAllWindows()

⛔️ خروجی: یک تصویر مشکی که روش خط، دایره و مستطیل کشیده شده.

🖱 رویدادهای موس در OpenCV

تابع اصلی برای گرفتن رویداد موس:
cv2.setMouseCallback(window_name, function_name)

شکل تابع callback:
def callback(event, x, y, flags, param):
    pass


event → نوع رویداد موس (کلیک، حرکت، …)

x, y → مختصات مکان موس روی تصویر

flags → وضعیت دکمه‌ها یا کلیدهای ترکیبی (مثلاً Ctrl + کلیک)

param → پارامتر اضافه که می‌تونی خودت تعریف کنی

📌 مهم‌ترین رویدادها (event):

مقدار  توضیح
cv2.EVENT_MOUSEMOVE
حرکت موس
cv2.EVENT_LBUTTONDOWN
  کلیک چپ پایین
cv2.EVENT_LBUTTONUP
کلیک چپ بالا
cv2.EVENT_LBUTTONDBLCLK
دابل کلیک چپ
cv2.EVENT_RBUTTONDOWN
  کلیک راست پایین
cv2.EVENT_RBUTTONUP
  کلیک راست بالا
cv2.EVENT_RBUTTONDBLCLK
دابل کلیک راست
cv2.EVENT_MBUTTONDOWN
  کلیک وسط پایین
cv2.EVENT_MBUTTONUP
  کلیک وسط بالا
cv2.EVENT_MBUTTONDBLCLK
  دابل کلیک وسط
cv2.EVENT_MOUSEWHEEL
اسکرول عمودی
cv2.EVENT_MOUSEHWHEEL
  اسکرول افقی
🎨 مثال: رسم دایره رنگی با کلیک موس

import cv2
import numpy as np
import random

# ایجاد تصویر سفید
img = np.ones((500, 500, 3), dtype=np.uint8) * 255

# تابع هندل کردن رویداد موس
def draw_circle(event, x, y, flags, param):
    if event == cv2.EVENT_LBUTTONDOWN:  # وقتی کلیک چپ شد
        # رنگ رندوم
        color = (random.randint(0,255), random.randint(0,255), random.randint(0,255))
        # دایره بکشیم
        cv2.circle(img, (x, y), 30, color, -1)

# نمایش پنجره
cv2.namedWindow("Canvas")
cv2.setMouseCallback("Canvas", draw_circle)

while True:
    cv2.imshow("Canvas", img)
    if cv2.waitKey(1) & 0xFF == 27:  # کلید Esc برای خروج
        break

cv2.destroyAllWindows()

#programmer #Python #opencv
6🦄2🤩1🕊1
دوره ی mlops با تخفیف ۷۰ درصد هم اکنون در سایت مکتب خونه منتشر شده این تخفیف حداکثر تا اخر شب فعال هستش

https://mktb.me/ejee/

برای اطلاعات بیشتر به آیدی زیر پیام دهید 🙏🌹

@reza_Mahmooudi
🤩21👌1
This media is not supported in your browser
VIEW IN TELEGRAM
مدار چشمک زن

دیود ها قطعات کاربردی و جالبی هستن، اگر به منبع تغذیه DC وصل بشه بر اساس وصل شدنش به سر مثبت و منفی میتونه نقش کلید باز یا بسته رو ایفا کنه
ولی همین قطعه اگر به منبع تغذیه AC وصل بشه شروع به قطع و وصل کردن جریان از مدار می کنه
تو ویدئو می‌بینید که led داره خاموش و روشن میشه یا به اصطلاح چشمک میزنه 👁️

ی قطعه باید داخل این مدار باشه که نیست، حدس بزنید اون قطعه چیه 😁🤝
4👌2🦄21
This media is not supported in your browser
VIEW IN TELEGRAM
ی صفحه html و css ساده، تمرین خوبیه به نظرم 🤝😎
3🥰2👌1🏆1
This media is not supported in your browser
VIEW IN TELEGRAM
قسمت آخر opencv رو هم فردا بذارم میریم سراغ کتابخونه های جذاب دیگه مثل این کتابخونه 😎😎😎🌹🌹
2😍2🦄2🔥1🤩1
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),…
آموزش Open cv - بخش دوم ( قسمت آخر)

نوشتن متن و تاریخ/ساعت روی تصویر و ویدیو با OpenCV


✍️ نوشتن متن روی تصویر
import cv2

# خواندن تصویر
img = cv2.imread("image.jpg")

# نوشتن متن روی تصویر

cv2.putText(img, "Hello OpenCV", (50, 50), cv2.FONT_HERSHEY_SIMPLEX,
1, (0, 255, 0), 2, cv2.LINE_AA)

# نمایش تصویر

cv2.imshow("Text Image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

📌 توضیح:

(50, 50) مختصات شروع متن هست.

(0, 255, 0) رنگ سبز (به صورت BGR).

1 اندازه فونت و 2 ضخامت متن.

📸 نمایش تاریخ و ساعت روی تصویر
import cv2
import datetime

img = cv2.imread("image.jpg")

# گرفتن تاریخ و ساعت جاری
dt = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

# نوشتن تاریخ و ساعت روی تصویر
cv2.putText(img, dt, (10, 30), cv2.FONT_HERSHEY_SIMPLEX,
1, (255, 0, 0), 2, cv2.LINE_AA)

cv2.imshow("Image with DateTime", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

🎥 نمایش تاریخ و ساعت روی ویدیو
import cv2
import datetime

cap = cv2.VideoCapture(0) # برای وبکم یا نام فایل مثل "video.mp4"

while True:
ret, frame = cap.read()
if not ret:
break

# گرفتن زمان جاری
dt = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

# نوشتن روی فریم
cv2.putText(frame, dt, (10, 30), cv2.FONT_HERSHEY_SIMPLEX,
0.7, (0, 255, 255), 2, cv2.LINE_AA)

cv2.imshow("Video with DateTime", frame)

# خروج با کلید q
if cv2.waitKey(1) & 0xFF == ord("q"):
break

cap.release()
cv2.destroyAllWindows()

نکته‌ها

مختصات (10, 30) رو می‌تونی تغییر بدی تا متن جای دیگه ظاهر بشه.

رنگ‌ها به صورت (B, G, R) هستن.

برای نمایش فقط ساعت از این استفاده کن:


dt = datetime.datetime.now().strftime("%H:%M:%S")

#Python #programmer #opencv #پایتون
4🥰21👍1
ComfyUI (Comfy.org)

چی هست؟

در ComfyUI یک پلتفرم متن‌باز (رایگان، نامحدود) و نُدمحور برای تولید محتوای هوش مصنوعی است. باهاش می‌تونی تصویر، ویدیو، 3D و صدا بسازی. تمام فرایند بصری است و می‌توانی با کشیدن و وصل کردن نُدها، جریان تولید را کامل کنترل کنی.

چه کار می‌کند؟

تولید تصاویر با مدل‌های AI (مثل Stable Diffusion)

تولید ویدیو کوتاه یا متحرک

ایجاد 3D و محتوای صوتی

امکان ذخیره و اشتراک‌گذاری Workflowها

پیش‌نمایش زنده و تغییرات فوری

سخت‌افزار پیشنهادی:

GPU: NVIDIA RTX 30/40/50

(حداقل  4GB VRAM، برای پروژه‌های سنگین 8_16 GB)

RAM: حداقل 16 GB (پیشنهاد 32 GB)

CPU: هر پردازنده مدرن کافی است

فضای ذخیره‌سازی: SSD با حداقل 10–40 GB برای نصب و چند صد GB برای مدل‌ها

نرم‌افزار هایی که باید نصب بشن :

Python 3.10–3.12

PyTorch 2.7+ (با پشتیبانی از CUDA برای GPUهای NVIDIA)

CUDA / cuDNN برای شتاب‌دهی GPU (NVIDIA)

Git برای نصب افزونه‌ها و مدیریت مخزن

💡 نکته: اگر GPU ضعیف داری می‌توانی با گزینه --cpu اجرا کنی اما خیلی کند خواهد بود.

📌 لینک رسمی: comfy.org

🖼️ گالری
2🙏21❤‍🔥1😍1
Programmer
قسمت آخر opencv رو هم فردا بذارم میریم سراغ کتابخونه های جذاب دیگه مثل این کتابخونه 😎😎😎🌹🌹
جزوه ی کتاب‌خونه ی جدید رو براتون نوشتم

توضیحات :

کتابخانه MediaPipe ساخته‌ی گوگل یک ابزار متن‌باز برای پردازش تصویر و ویدئو ست .
این کتابخونه می‌تونه چهره، دست، بدن و اشیاء مختلف را تشخیص و ردیابی کنه.
از مدل‌های یادگیری عمیق استفاده می‌کنه و روی موبایل، وب و دسکتاپ اجرا می‌شه.
کاربردهاش شامل تشخیص چهره، ردیابی حرکات بدن و ساخت برنامه‌های واقعیت افزوده ست.

⬇️ دانلود
3🦄21💘1
شنیدم نتايج کنکور اومده، امیدوارم خوش خبر باشید همگی 🌹🌹🌹

به دوستانی هم که دارن ایام امتحانات رو می گذرونن خسته نباشید میگم، ترم طولانیی بود، امیدوارم موفق باشید 🙏🌹
🦄32😍21👎1
📄 لیست مباحث قرار داده شده در کانال :

ایمیل و راه ارتباطی

artemisasadi454@gmail.com

گروه ها ی تمرین، پرسش و پاسخ :

🤖گروه رباتیک

🧑‍💻گروه هوش مصنوعی

____

مجموعه جزوات :

📚مجموعه جزوات و آموزش های طراحی سایت

📚مجموعه جزوات و کتاب های هوش مصنوعی

📚 جزوه ی ریاضی برای هوش مصنوعی

🔧جزوه ی رفع مشکل npm

📚جزوه ی github

📚جزوه ی Prompt نویسی

📚آموزش ربات نویسی تلگرام

📚جزوه web scraping

📚کتاب 133 گجت برای هک

🧑‍💻ساخت ی چت بات با apikey gmini

🧑‍💻جزوه ی cpanel

🧑‍💻جزوه ی داکر

🧑‍💻 جزوه ی Opencv-part2

🧑‍💻جزوه ی Pytorch part1

🧑‍💻جزوه‌ ی ROS
____

💡پروژه ها :

🎨قالب سایت خفاش

🎨 قالب سایت دریا

🎨طراحی چرخ دنده ( سایت)

🎨طراحی اتم ( سایت)

🎨طراحی سایت منو

🎨طراحی سایت گالری

🤖بات تلگرام

🤖چت بات هوش مصنوعی تلگرام

🤖چت بات هوش مصنوعی ( همراه با دیتاست)

🧑‍💻 ترجمه ی متن از انگلیسی به فارسی

🗣️ تبدیل صدا به متن

😍 تحلیل احساسات

💬 ضبط و ترجمه ی صدای دسک‌تاپ

👁️‍🗨️ تشخیص اشیاء

📚 آموزش و تشخیص چهره

🧑‍🏫کد Stt-en
5👌2🏆1
Programmer pinned «📄 لیست مباحث قرار داده شده در کانال : ایمیل و راه ارتباطی artemisasadi454@gmail.com گروه ها ی تمرین، پرسش و پاسخ : 🤖گروه رباتیک 🧑‍💻گروه هوش مصنوعی ____ مجموعه جزوات : 📚مجموعه جزوات و آموزش های طراحی سایت 📚مجموعه جزوات و کتاب های هوش مصنوعی 📚»