PDA

View Full Version : سوال: تبديل رنگ ها



رامین مرادی
سه شنبه 24 بهمن 1391, 17:46 عصر
با سلام
من با متد point پيكجر باكس رنگ يك نقطه از تصوير رو بدست ميارم واون رو به كد رنگ rgb تبديل مي كنم
خوب مي دونيد كه rgbمي تونه 256*256*256 يا به عبارتي حدود 16 ميليون و هفتصد هزارو خورده اي رنگ باشه آيا اين امكان داره كه اين رنگ رو بشه به يه رنگ معاذلش تو 8 ميليون رنگ يا كمتر همون 32 و16و8 در اورد؟؟؟؟

m2011kh
سه شنبه 24 بهمن 1391, 23:12 عصر
سلام در واقع مخواید تصویر رو تبدیل کنید.
اطلاعات کافی در این مورد ندارم ولی تا حدی میدونم که رنگی که در 16 ملیون هست رو نزدیک ترین رنگ در 8 ملیون رنگ رو پیدا و جایگزین کنید.
امیدوارم اسپم نداده باشم.

اینم یه راهنماییه دیگه نه؟؟؟:کف:

mehran901
چهارشنبه 25 بهمن 1391, 01:26 صبح
ی تایپ بذار

Private Type colortype
red As Long
green As Long
blue As Long

End Type
Dim a As colortype

حالا با استفاده از فانکشنی که آوردم کد RGB بگیر ( البته اگه میخوای بدونی که این محاسبش چی شد ، قبلا ی فرمولی ازش حفظ بودم که الان یادم نیست و این سورسش از رو اونه ... گشتمرابطشو پیدا نکردم کسی یادشه ؟)


Private Function rgb1(color As Long) As colortype
rgb1.red = (Int(color And 255)) And 255
rgb1.green = (Int(color / 256)) And 255
rgb1.blue = (Int(color / 65536)) And 255
End Function

مثلا داریم :

A = rgb1(x1.point(x,y))
msgbox a.red


به همین سادگی ...

رامین مرادی
جمعه 27 بهمن 1391, 17:46 عصر
از همه دوستان ممنون فکر کنم سوال من رو خوب متوجه نشدید من اون rgb رو بدست اوردم فقط سوالم اینه که من کد رنگ rgb رو بدست اوردم یعنی این کد رنگ می تونه 16 میلیون رنگ رو تولید کنه .
خوب می دونید که با تابعqbcolor فقط می تونید 16 رنگ رو نمایش داد منم می خوام رنگ نقطه رو تو 8 یا 4 یا 2 میلیون رنگ بدست بیارم.:گیج:

mehran901
جمعه 27 بهمن 1391, 17:53 عصر
بنده که اصلا متوجه نشدم ، کد رنگ میتونه 16 میلیون رنگ تولید کنه ! ؟! تابع rgb با گرفتن سه پارامتر r g b که هرکدوم 8 بیتی هستن یعنی 255 * 255 * 255 = 16581375 رنگ مختلف رو میتونه ایجاد کنه ...! و نیازی نیست از تابع qbcolor که از 0 تا 15 پارامتر میگیره استفاده کنین...! رنگی رو که میخواین تولید کنین با همون rgb تو هر طیفی میشه تولید کرد و خوندش

در هر صورت امیدوارم به درد خورده باشه

رامین مرادی
جمعه 27 بهمن 1391, 18:02 عصر
من این کد رو تولید کردم خوب. عکسی که با این کد میشه تولید کرد معلومه که خیلی با کیفیت هست خوب حرف 16 میلیون رنگه دیگه نزدیک به بینایی انسان است(البته در مورد رنگ ها). من می خوام این عکس با کیفیت رو تبدیل به عکس بی کیفیت کنم یعنی با تعداد رنگ کمتر در حد 4 میلیون رنگ .!!!!
فکر کنم دیگه از این واضح تر نمیشه گفت....

mehran901
جمعه 27 بهمن 1391, 18:29 عصر
آهان متوجه شدم ، متاسفانه این کارو دیگه تاحالا انجام نداده بودم :D
اگه چیزی به ذهنم رسید حتما بیان میکنم

رامین مرادی
یک شنبه 29 بهمن 1391, 17:50 عصر
نظري نبود؟؟؟؟؟؟؟؟؟؟