diff options
author | Roy Shilkrot <roy.shil@gmail.com> | 2022-10-31 15:45:52 +0000 |
---|---|---|
committer | Roy Shilkrot <roy.shil@gmail.com> | 2022-10-31 15:45:52 +0000 |
commit | 509fd1459bacfe0dcde1e5792ea3e046aa9f4d24 (patch) | |
tree | eaecb0351d6a95e4c29eaebdcb8b304990fd3a91 | |
parent | bdc90837987ed8919dd611fd01553b0c170ded5c (diff) | |
parent | dc7425a56e7a014cbfa3b3d44ad2321e519fe378 (diff) | |
download | stable-diffusion-webui-gfx803-509fd1459bacfe0dcde1e5792ea3e046aa9f4d24.tar.gz stable-diffusion-webui-gfx803-509fd1459bacfe0dcde1e5792ea3e046aa9f4d24.tar.bz2 stable-diffusion-webui-gfx803-509fd1459bacfe0dcde1e5792ea3e046aa9f4d24.zip |
Merge remote-tracking branch 'upstream/master' into roy.add_simple_interrogate_api
45 files changed, 4492 insertions, 1067 deletions
@@ -29,4 +29,5 @@ notification.mp3 /textual_inversion .vscode /extensions - +/test/stdout.txt +/test/stderr.txt @@ -1 +1,13 @@ * @AUTOMATIC1111
+/localizations/ar_AR.json @xmodar @blackneoo
+/localizations/de_DE.json @LunixWasTaken
+/localizations/es_ES.json @innovaciones
+/localizations/fr_FR.json @tumbly
+/localizations/it_IT.json @EugenioBuffo
+/localizations/ja_JP.json @yuuki76
+/localizations/ko_KR.json @36DB
+/localizations/pt_BR.json @M-art-ucci
+/localizations/ru_RU.json @kabachuha
+/localizations/tr_TR.json @camenduru
+/localizations/zh_CN.json @dtlnor @bgluminous
+/localizations/zh_TW.json @benlisquare
diff --git a/javascript/extensions.js b/javascript/extensions.js new file mode 100644 index 00000000..86f5336d --- /dev/null +++ b/javascript/extensions.js @@ -0,0 +1,24 @@ +
+function extensions_apply(_, _){
+ disable = []
+ update = []
+ gradioApp().querySelectorAll('#extensions input[type="checkbox"]').forEach(function(x){
+ if(x.name.startsWith("enable_") && ! x.checked)
+ disable.push(x.name.substr(7))
+
+ if(x.name.startsWith("update_") && x.checked)
+ update.push(x.name.substr(7))
+ })
+
+ restart_reload()
+
+ return [JSON.stringify(disable), JSON.stringify(update)]
+}
+
+function extensions_check(){
+ gradioApp().querySelectorAll('#extensions .extension_status').forEach(function(x){
+ x.innerHTML = "Loading..."
+ })
+
+ return []
+}
\ No newline at end of file diff --git a/javascript/hints.js b/javascript/hints.js index 6ddd6aec..623bc25c 100644 --- a/javascript/hints.js +++ b/javascript/hints.js @@ -75,6 +75,7 @@ titles = { "Create style": "Save current prompts as a style. If you add the token {prompt} to the text, the style use that as placeholder for your prompt when you use the style in the future.", "Checkpoint name": "Loads weights from checkpoint before making images. You can either use hash or a part of filename (as seen in settings) for checkpoint name. Recommended to use with Y axis for less switching.", + "Inpainting conditioning mask strength": "Only applies to inpainting models. Determines how strongly to mask off the original image for inpainting and img2img. 1.0 means fully masked, which is the default behaviour. 0.0 means a fully unmasked conditioning. Lower values will help preserve the overall composition of the image, but will struggle with large changes.", "vram": "Torch active: Peak amount of VRAM used by Torch during generation, excluding cached data.\nTorch reserved: Peak amount of VRAM allocated by Torch, including all active and cached data.\nSys VRAM: Peak amount of VRAM allocation across all applications / total GPU VRAM (peak utilization%).", diff --git a/javascript/imageviewer.js b/javascript/imageviewer.js index 9e380c65..67916536 100644 --- a/javascript/imageviewer.js +++ b/javascript/imageviewer.js @@ -13,6 +13,15 @@ function showModal(event) { } lb.style.display = "block"; lb.focus() + + const tabTxt2Img = gradioApp().getElementById("tab_txt2img") + const tabImg2Img = gradioApp().getElementById("tab_img2img") + // show the save button in modal only on txt2img or img2img tabs + if (tabTxt2Img.style.display != "none" || tabImg2Img.style.display != "none") { + gradioApp().getElementById("modal_save").style.display = "inline" + } else { + gradioApp().getElementById("modal_save").style.display = "none" + } event.stopPropagation() } @@ -81,6 +90,25 @@ function modalImageSwitch(offset) { } } +function saveImage(){ + const tabTxt2Img = gradioApp().getElementById("tab_txt2img") + const tabImg2Img = gradioApp().getElementById("tab_img2img") + const saveTxt2Img = "save_txt2img" + const saveImg2Img = "save_img2img" + if (tabTxt2Img.style.display != "none") { + gradioApp().getElementById(saveTxt2Img).click() + } else if (tabImg2Img.style.display != "none") { + gradioApp().getElementById(saveImg2Img).click() + } else { + console.error("missing implementation for saving modal of this type") + } +} + +function modalSaveImage(event) { + saveImage() + event.stopPropagation() +} + function modalNextImage(event) { modalImageSwitch(1) event.stopPropagation() @@ -93,6 +121,9 @@ function modalPrevImage(event) { function modalKeyHandler(event) { switch (event.key) { + case "s": + saveImage() + break; case "ArrowLeft": modalPrevImage(event) break; @@ -198,6 +229,14 @@ document.addEventListener("DOMContentLoaded", function() { modalTileImage.title = "Preview tiling"; modalControls.appendChild(modalTileImage) + const modalSave = document.createElement("span") + modalSave.className = "modalSave cursor" + modalSave.id = "modal_save" + modalSave.innerHTML = "🖫" + modalSave.addEventListener("click", modalSaveImage, true) + modalSave.title = "Save Image(s)" + modalControls.appendChild(modalSave) + const modalClose = document.createElement('span') modalClose.className = 'modalClose cursor'; modalClose.innerHTML = '×' diff --git a/javascript/ui.js b/javascript/ui.js index cfd0dcd3..7e116465 100644 --- a/javascript/ui.js +++ b/javascript/ui.js @@ -45,14 +45,14 @@ function switch_to_txt2img(){ return args_to_array(arguments); } -function switch_to_img2img_img2img(){ +function switch_to_img2img(){ gradioApp().querySelector('#tabs').querySelectorAll('button')[1].click(); gradioApp().getElementById('mode_img2img').querySelectorAll('button')[0].click(); return args_to_array(arguments); } -function switch_to_img2img_inpaint(){ +function switch_to_inpaint(){ gradioApp().querySelector('#tabs').querySelectorAll('button')[1].click(); gradioApp().getElementById('mode_img2img').querySelectorAll('button')[1].click(); @@ -65,26 +65,6 @@ function switch_to_extras(){ return args_to_array(arguments); } -function extract_image_from_gallery_txt2img(gallery){ - switch_to_txt2img() - return extract_image_from_gallery(gallery); -} - -function extract_image_from_gallery_img2img(gallery){ - switch_to_img2img_img2img() - return extract_image_from_gallery(gallery); -} - -function extract_image_from_gallery_inpaint(gallery){ - switch_to_img2img_inpaint() - return extract_image_from_gallery(gallery); -} - -function extract_image_from_gallery_extras(gallery){ - switch_to_extras() - return extract_image_from_gallery(gallery); -} - function get_tab_index(tabId){ var res = 0 @@ -128,10 +128,12 @@ def prepare_enviroment(): blip_commit_hash = os.environ.get('BLIP_COMMIT_HASH', "48211a1594f1321b00f14c9f7a5b4813144b2fb9")
sys.argv += shlex.split(commandline_args)
+ test_argv = [x for x in sys.argv if x != '--tests']
sys.argv, skip_torch_cuda_test = extract_arg(sys.argv, '--skip-torch-cuda-test')
sys.argv, reinstall_xformers = extract_arg(sys.argv, '--reinstall-xformers')
sys.argv, update_check = extract_arg(sys.argv, '--update-check')
+ sys.argv, run_tests = extract_arg(sys.argv, '--tests')
xformers = '--xformers' in sys.argv
deepdanbooru = '--deepdanbooru' in sys.argv
ngrok = '--ngrok' in sys.argv
@@ -194,6 +196,26 @@ def prepare_enviroment(): print("Exiting because of --exit argument")
exit(0)
+ if run_tests:
+ tests(test_argv)
+ exit(0)
+
+
+def tests(argv):
+ if "--api" not in argv:
+ argv.append("--api")
+
+ print(f"Launching Web UI in another process for testing with arguments: {' '.join(argv[1:])}")
+
+ with open('test/stdout.txt', "w", encoding="utf8") as stdout, open('test/stderr.txt', "w", encoding="utf8") as stderr:
+ proc = subprocess.Popen([sys.executable, *argv], stdout=stdout, stderr=stderr)
+
+ import test.server_poll
+ test.server_poll.run_tests()
+
+ print(f"Stopping Web UI process with id {proc.pid}")
+ proc.kill()
+
def start_webui():
print(f"Launching Web UI with arguments: {' '.join(sys.argv[1:])}")
diff --git a/localizations/ar_AR.json b/localizations/ar_AR.json index 1195a8e9..abbbcff4 100644 --- a/localizations/ar_AR.json +++ b/localizations/ar_AR.json @@ -1,45 +1,33 @@ { "rtl": true, - "⤡": "⤡", - "⊞": "⊞", - "×": "×", - "❮": "❮", - "❯": "❯", - "Loading...": "جار التحميل...", - "view": "معاينة", - "api": "api", - "•": "•", - "built with gradio": "مبني باستخدام Gradio", - "Stable Diffusion checkpoint": "نماذج الانتشار المستقر", - "txt2img": "نص لصورة", - "img2img": "صورة لصورة", - "Extras": "الإضافات", - "PNG Info": "معلومات PNG", - "Checkpoint Merger": "دمج النماذج", - "Train": "التدريب", - "Create aesthetic embedding": "Create aesthetic embedding", - "Image Browser": "مستعرض الصور", - "Settings": "الإعدادات", - "Prompt": "الموجه", - "Negative prompt": "الموجه السلبي", - "Run": "تشغيل", - "Skip": "تخطي", - "Interrupt": "إيقاف", - "Generate": "إنشاء", - "Style 1": "نمط 1", - "Style 2": "نمط 2", - "Label": "الوسم", - "File": "ملف", - "Drop File Here": "اسحب الملف هنا", - "-": "-", - "or": "أو", - "Click to Upload": "انقر للتحميل", - "Image": "صورة", - "Check progress": "تحقق من التقدم", - "Check progress (first)": "تحقق من التقدم (الأول)", - "Sampling Steps": "خطوات أخذ العينة", - "Sampling method": "نظام أخذ العينات", + "Loading...": "لحظة...", + "view": "اعرض ", + "api": "واجهة البرمجة", + "built with gradio": "مبني باستخدام gradio", + "Stable Diffusion checkpoint": "أوزان نموذج الإنتشار المسقر", + "txt2img": "نص إلى صورة", + "Prompt": "الطلب", + "Prompt (press Ctrl+Enter or Alt+Enter to generate)": "الطلب (لبدء الإنتاج Ctrl+Enter أو Alt+Enter اضغط)", + "Negative prompt": "عكس الطلب", + "Negative prompt (press Ctrl+Enter or Alt+Enter to generate)": "عكس الطلب (لبدء الإنتاج Ctrl+Enter أو Alt+Enter اضغط)", + "Add a random artist to the prompt.": "أضف فنان عشوائي للطلب", + "Read generation parameters from prompt or last generation if prompt is empty into user interface.": "اقرأ عوامل الإنتاج من الطلب أو من الإنتاج السابق إذا كان الطلب فارغا", + "Save style": "احتفظ بالطلب وعكسه كإضافة", + "Apply selected styles to current prompt": "ألحق الإضافات المحددة إلى الطلب وعكسه", + "Generate": "أنتج", + "Skip": "تخطى", + "Stop processing current image and continue processing.": "لا تكمل خطوات هذة الحزمة وانتقل إلى الحزمة التالية", + "Interrupt": "توقف", + "Stop processing images and return any results accumulated so far.": "توقف عن الإنتاج واعرض ما تم إلى الآن", + "Style 1": "الإضافة 1", + "Style to apply; styles have components for both positive and negative prompts and apply to both": "الإضافات (styles) عبارة عن كلمات تتكرر كثيرا يتم إلحاقها بالطلب وعكسه عند الرغبة", + "Style 2": "الإضافة 2", + "Do not do anything special": "لا يغير شيئا", + "Sampling Steps": "عدد الخطوات", + "Sampling method": "أسلوب الخطو", + "Which algorithm to use to produce the image": "Sampler: اسم نظام تحديد طريقة تغيير المسافات بين الخطوات", "Euler a": "Euler a", + "Euler Ancestral - very creative, each can get a completely different picture depending on step count, setting steps to higher than 30-40 does not help": "Euler Ancestral: طريقة مبدعة يمكن أن تنتج صور مختلفة على حسب عدد الخطوات، لا تتغير بعد 30-40 خطوة", "Euler": "Euler", "LMS": "LMS", "Heun": "Heun", @@ -51,406 +39,480 @@ "DPM2 Karras": "DPM2 Karras", "DPM2 a Karras": "DPM2 a Karras", "DDIM": "DDIM", + "Denoising Diffusion Implicit Models - best at inpainting": "Denoising Diffusion Implicit Models: الأفضل في الإنتاج الجزئي", "PLMS": "PLMS", "Width": "العرض", - "Height": "الارتفاع", - "Restore faces": "ترميم الوجوه", - "Tiling": "تبليط", - "Highres. fix": "إصلاح الصور عالية الدقة", - "Firstpass width": "عرض المرور الأول", - "Firstpass height": "ارتفاع المرور الأول", - "Denoising strength": "قوة تقليل الضوضاء", - "Batch count": "عدد الدُفعات", - "Batch size": "حجم الدفعة", - "CFG Scale": "مقياس التقارب من الموجه (CFG)", + "Height": "الإرتفاع", + "Restore faces": "تحسين الوجوه", + "Tiling": "ترصيف", + "Produce an image that can be tiled.": "أنتج صور يمكن ترصيفها بجانب بعضها كالبلاط", + "Highres. fix": "إصلاح الدقة العالية", + "Use a two step process to partially create an image at smaller resolution, upscale, and then improve details in it without changing composition": "أنتج صورة بدقة منخفضة ثم قم برفع الدقة فيما بعد لمنع التشوهات التي تحصل عندما تكون الدقة المطلوبة كبيرة", + "Firstpass width": "العرض الأولي", + "Firstpass height": "الإرتفاع الأولي", + "Denoising strength": "المدى", + "Determines how little respect the algorithm should have for image's content. At 0, nothing will change, and at 1 you'll get an unrelated image. With values below 1.0, processing will take less steps than the Sampling Steps slider specifies.": "Denoising strength: حدد مدى الإبتعاد عن الصورة (عدد الخطوات الفعلي = عدد الخطوات * المدى)", + "Batch count": "عدد الحزم", + "How many batches of images to create": "يتم إنتاج الصور على دفعات، كل دفعة فيها حزمة من الصور", + "Batch size": "حجم الحزمة", + "How many image to create in a single batch": "Batch size: إنتاج حزمة صور أسرع من إنتاجهم فرادى، حدد عدد الصور في كل حزمة", + "CFG Scale": "التركيز", + "Classifier Free Guidance Scale - how strongly the image should conform to prompt - lower values produce more creative results": "CFG scale: يحدد مقدار التركيز على تلبية الطلب وتجنب عكسه، كلما زاد قل الإبداع", "Seed": "البذرة", - "Extra": "إضافي", - "Variation seed": "تباين البذرة", - "Variation strength": "قوة التباين", - "Resize seed from width": "تغيير حجم البذرة من العرض", - "Resize seed from height": "تغيير حجم البذرة من الارتفاع", - "Open for Clip Aesthetic!": "Open for Clip Aesthetic!", + "A value that determines the output of random number generator - if you create an image with same parameters and seed as another image, you'll get the same result": "Seed: رقم طبيعي عشوائي يسمح بإعادة إنتاج نفس الصورة إذا توافقت قيم العوامل الأخرى", + "Set seed to -1, which will cause a new random number to be used every time": "استخدم بذرة جديدة في كل مرة (نرمز لهذا الخيار بجعل قيمة البذرة 1-)", + "Reuse seed from last generation, mostly useful if it was randomed": "أعد استخدام البذرة من الإنتاج السابق", + "Extra": "مزج", + "Variation seed": "بذرة الممزوج", + "Seed of a different picture to be mixed into the generation.": "Variation seed: بذرة صورة أخرى ليتم مزجها مع الصورة الحالية", + "Variation strength": "أثر الممزوج", + "How strong of a variation to produce. At 0, there will be no effect. At 1, you will get the complete picture with variation seed (except for ancestral samplers, where you will just get something).": "Variation seed strength: مقدار أثر الصورة المدمجة على النتيجة النهائية (0: لا أثر، 1: أثر كامل ما عدا عند استخدام أسلوب خطو سلفي Ancestral)", + "Resize seed from width": "عرض الممزوج", + "Resize seed from height": "إرتفاع الممزوج", + "Make an attempt to produce a picture similar to what would have been produced with same seed at specified resolution": "Seed resize from: حدد دقة صورة الممزوج (0: نفس دقة الإنتاج)", + "Open for Clip Aesthetic!": "تضمين تجميلي", "▼": "▼", - "Aesthetic weight": "Aesthetic weight", - "Aesthetic steps": "Aesthetic steps", - "Aesthetic learning rate": "Aesthetic learning rate", - "Slerp interpolation": "Slerp interpolation", - "Aesthetic imgs embedding": "Aesthetic imgs embedding", - "None": "لايوجد", - "Aesthetic text for imgs": "Aesthetic text for imgs", - "Slerp angle": "Slerp angle", - "Is negative text": "Is negative text", - "Script": "سكريبت", - "Prompt matrix": "مصفوفة الموجهات", - "Prompts from file or textbox": "موجهات من ملف أو مربع النص", - "X/Y plot": "الرسم البياني X/Y", - "Put variable parts at start of prompt": "ضع الأجزاء المتغيرة في بداية الموجه", - "Show Textbox": "إظهار مربع النص", - "File with inputs": "ملف يحتوي المدخلات", - "Prompts": "الموجهات", - "X type": "نوع X", - "Nothing": "لا شئ", - "Var. seed": "تغير البذرة", - "Var. strength": "قوة التغيير", - "Steps": "الخطوات", - "Prompt S/R": "موجه S / R", - "Prompt order": "ترتيب الموجهات", - "Sampler": "نظام أخذ العينات", - "Checkpoint name": "اسم النموذج", + "Aesthetic weight": "أثر التضمين", + "Aesthetic steps": "عدد الخطوات", + "Aesthetic learning rate": "معدل التعلم", + "Slerp interpolation": "امزج بطريقة كروية", + "Aesthetic imgs embedding": "التضمين", + "None": "بدون", + "Aesthetic text for imgs": "الطلب (اختياري)", + "This text is used to rotate the feature space of the imgs embs": "لإعادة توجيه التضمين التجميلي", + "Slerp angle": "أثر الطلب", + "Is negative text": "الطلب عكسي", + "Script": "أدوات خاصة", + "Prompt matrix": "مصفوفة طلبات", + "Put variable parts at start of prompt": "الجزء المتغير في بداية الطلب", + "Prompts from file or textbox": " قائمة طلبات", + "Iterate seed every line": "غير البذرة مع كل طلب", + "List of prompt inputs": "قائمة الطلبات", + "Upload prompt inputs": "اجلب الطلبات من ملف", + "Drop File Here": "اسقط ملف هنا", + "-": "-", + "or": "أو", + "Click to Upload": "انقر للرفع", + "X/Y plot": "مصفوفة عوامل", + "X type": "العامل الأول", + "Nothing": "لا شيء", + "Var. seed": "بذرة الممزوج", + "Var. strength": "أثر الممزوج", + "Steps": "عدد الخطوات", + "Prompt S/R": "كلمات بديلة", + "Prompt order": "ترتيب الكلمات", + "Sampler": "أسلوب الخطو", + "Checkpoint name": "ملف الأوزان", "Hypernetwork": "الشبكة الفائقة", "Hypernet str.": "قوة الشبكة الفائقة", - "Sigma Churn": "دفع سيجما", - "Sigma min": "أصغر سيجما", - "Sigma max": "أكبر سيجما", - "Sigma noise": "ضجة سيجما", - "Eta": "الوقت المتوقع", - "Clip skip": "تخطي Clip", - "Denoising": "تقليل الضوضاء", - "X values": "قيم X", - "Y type": "نوع Y", - "Y values": "قيم Y", - "Draw legend": "ارسم مفتاح التوضيح", - "Include Separate Images": "قم بتضمين الصور منفصلة", - "Keep -1 for seeds": "احتفظ بـقيمة -1 للبذور", - "Drop Image Here": "إسقاط الصورة هنا", - "Save": "حفظ", - "Send to img2img": "أرسل إلى صورة لصورة", - "Send to inpaint": "أرسل إلى إعادة الرسم الجزئي", - "Send to extras": "أرسل إلى الإضافات", - "Make Zip when Save?": "إنشاء ملف مضغوط عند الحفظ؟", - "Textbox": "مربع النص", - "Interrogate\nCLIP": "استجواب\n CLIP", - "Inpaint": "إعادة الرسم الجزئي", - "Batch img2img": "دفعات صورة لصورة", - "Image for img2img": "صورة (صورة لصورة)", - "Image for inpainting with mask": "صورة (إعادة الرسم الجزئي)", - "Mask": "القناع", - "Mask blur": "ضبابية القناع", - "Mask mode": "أسلوب القناع", - "Draw mask": "رسم القناع", - "Upload mask": "تحميل القناع", - "Masking mode": "أسلوب التقنيع", - "Inpaint masked": "إعادة الرسم الجزئي (المنطقة المقنعة)", - "Inpaint not masked": "إعادة الرسم الجزئي (المنطقة الغير مقنعة)", - "Masked content": "المحتوى المقنع", - "fill": "الملأ", - "original": "الأصلي", - "latent noise": "الضوضاء الكامنة", - "latent nothing": "لا شيء كامن", - "Inpaint at full resolution": "إعادة الرسم الجزئي بدقة كاملة", - "Inpaint at full resolution padding, pixels": "إعادة الرسم الجزئي بدقة كاملة, الحشو, بيكسل", - "Process images in a directory on the same machine where the server is running.": "معالجة الصور في المجلد على نفس الجهاز حيث يتم تشغيل الخادم.", - "Use an empty output directory to save pictures normally instead of writing to the output directory.": "استخدم مجلد إخراج فارغ لحفظ الصور بشكل طبيعي بدلاً من الكتابة إلى مجلد المخرجات.", - "Input directory": "مجلد المدخلات", - "Output directory": "مجلد المخرجات", - "Resize mode": "وضعية تغيير الحجم", - "Just resize": "تغييير الحجم فقط", - "Crop and resize": "اقتصاص وتغيير الحجم", - "Resize and fill": "تغيير الحجم والتعبئة", - "img2img alternative test": "صورة لصورة البديلة", - "Loopback": "الحلقة الراجعة", - "Outpainting mk2": "الرسم الخارجي نسخة 2", - "Poor man's outpainting": "الرسم الخارجي للفقراء", - "SD upscale": "ترقية الانتشار المستقر", - "should be 2 or lower.": "should be 2 or lower.", - "Override `Sampling method` to Euler?(this method is built for it)": "Override `Sampling method` to Euler?(this method is built for it)", - "Override `prompt` to the same value as `original prompt`?(and `negative prompt`)": "Override `prompt` to the same value as `original prompt`?(and `negative prompt`)", - "Original prompt": "Original prompt", - "Original negative prompt": "Original negative prompt", - "Override `Sampling Steps` to the same value as `Decode steps`?": "Override `Sampling Steps` to the same value as `Decode steps`?", - "Decode steps": "Decode steps", - "Override `Denoising strength` to 1?": "Override `Denoising strength` to 1?", - "Decode CFG scale": "Decode CFG scale", - "Randomness": "Randomness", - "Sigma adjustment for finding noise for image": "Sigma adjustment for finding noise for image", - "Loops": "Loops", - "Denoising strength change factor": "معامل قوة تقليل الضوضاء", - "Recommended settings: Sampling Steps: 80-100, Sampler: Euler a, Denoising strength: 0.8": "الإعدادات الموصى بها: خطوات أخذ العينات: 80-100 ، طريقة أخذ العينات: Euler a ، تقليل الضوضاء: 0.8", - "Pixels to expand": "عدد البكسل للتوسيع", - "Outpainting direction": "إتجاه الرسم الخارجي", + "Inpainting conditioning mask strength": "قوة قناع الإنتاج الجزئي", + "Only applies to inpainting models. Determines how strongly to mask off the original image for inpainting and img2img. 1.0 means fully masked, which is the default behaviour. 0.0 means a fully unmasked conditioning. Lower values will help preserve the overall composition of the image, but will struggle with large changes.": "حدد مدى صرامة قناع الإنتاج، يصبح القناع شفاف إذا قوته 0 (لا يعمل إلا مع ملفات أوزان الإنتاج الجزئي: inpainting)", + "Sigma Churn": "العشوائية (Schurn)", + "Sigma min": "أدنى تشويش (Stmin)", + "Sigma max": "أقصى تشويش (Stmax)", + "Sigma noise": "التشويش (Snoise)", + "Eta": "العامل Eta η", + "Clip skip": "تخطي آخر طبقات CLIP", + "Denoising": "المدى", + "Cond. Image Mask Weight": "قوة قناع الإنتاج الجزئي", + "X values": "قيم العامل الأول", + "Separate values for X axis using commas.": "افصل القيم بفواصل (,) من اليسار إلى اليمين", + "Y type": "العامل الثاني", + "Y values": "قيم العامل الثاني", + "Separate values for Y axis using commas.": "افصل القيم بفواصل (,) من الأعلى إلى الأسفل", + "Draw legend": "أضف مفتاح التوضيح", + "Include Separate Images": "أضف الصور منفصلة", + "Keep -1 for seeds": "استخدم بذور عشوائية", + "Save": "احفظ", + "Write image to a directory (default - log/images) and generation parameters into csv file.": "احفظ الصور مع ملف العوامل بصيغة CSV", + "Send to img2img": "أرسل لصورة إلى صورة", + "Send to inpaint": "أرسل للإنتاج الجزئي", + "Send to extras": "أرسل للمعالجة", + "Open images output directory": "افتح مجلد الصور المخرجة", + "Make Zip when Save?": "ضع النتائج في ملف مضغوط عند الحفظ", |