update ai image editor page
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -2,4 +2,4 @@ new_members.json
|
||||
files/student_locations.db
|
||||
*venv/
|
||||
__pycache__/
|
||||
*.pyc
|
||||
*.pyc
|
||||
|
||||
@@ -35,28 +35,33 @@ def edit_image_with_ai(image, description):
|
||||
def ai_image_editor():
|
||||
st.markdown("<h1 style='text-align: center; color: #451002;'>AI Image Editor🖼️</h1>", unsafe_allow_html=True)
|
||||
st.markdown("<h5 style='text-align: center;'> Edit and enhance your images with the power of AI! 🎨 </h3>", unsafe_allow_html=True)
|
||||
st.info("Powered by the online [Gemini Image Generation](https://ai.google.dev/gemini-api/docs/image-generation) API! ⚠️ No images or descriptions are stored.")
|
||||
# user upload an image and provide a description of the edit they want
|
||||
uploaded_image = st.file_uploader("Upload an image to edit", type=["png", "jpg", "jpeg"], help="Choose an image file (PNG, JPG, JPEG) to upload.")
|
||||
if uploaded_image is not None:
|
||||
with st.spinner("Loading image..."):
|
||||
# display the uploaded image
|
||||
image = Image.open(uploaded_image)
|
||||
st.image(image, width= 300)
|
||||
st.success("Image uploaded successfully!")
|
||||
|
||||
reference_prompt = """
|
||||
Please edit the uploaded image to create a professional profile photo of the person in the picture. Focus on the following:
|
||||
- Outfit: Transform the current attire into a fitted, black professional suit. Ensure the fit is flattering and appropriate for a software engineer headshot. Change glasses to frameless fashion glasses. Change tie color to deep blue
|
||||
st.info("""📎Powered by [Gemini Image Generation](https://ai.google.dev/gemini-api/docs/image-generation) API!
|
||||
⚠️ No images or prompt descriptions are stored.""")
|
||||
reference_prompt = """
|
||||
**Sample Prompt Description:**
|
||||
|
||||
Please edit the uploaded image to create a professional profile photo of the person in the picture. Focus on the following:
|
||||
- Outfit: Transform the current attire into a fitted, black professional suit. Ensure the fit is flattering and appropriate for a software engineer headshot.
|
||||
- Facial Features & Hair: Retain the original facial features (eyes, nose, mouth, etc.) and individual hair strands as much as possible. The goal is to achieve a realistic, edited look, not an AI-generated or overly smoothed/perfected appearance. Avoid any artificial alterations to these features.
|
||||
- Pose Adjustment: Adjust the pose so that the face is facing forward. Make subtle corrections to the body posture to appear slightly straightened and more upright.
|
||||
- Framing & Composition: Crop the image as a half-body portrait. Ensure the head and shoulders are well-framed.
|
||||
- Background & Lighting: Use a neutral, non-distracting background (e.g., soft gray). Apply soft, natural lighting to create a professional and inviting look. Avoid harsh shadows or overly bright highlights.
|
||||
- Overall Style: The final image should be photorealistic and suitable for a professional profile. It should project professionalism and competence.
|
||||
"""
|
||||
|
||||
# user upload an image and provide a description of the edit they want
|
||||
uploaded_image = st.file_uploader("Upload an image and write prompt description to edit", type=["png", "jpg", "jpeg"], help="Choose an image file (PNG, JPG, JPEG) to upload.")
|
||||
if uploaded_image is not None:
|
||||
with st.expander("See Example Prompt for Professional Profile Photo"):
|
||||
st.info("Note: The example prompt is for reference only. You can provide your own description of the edits you want to make to the image. The quality of the results may vary based on the specificity of your prompt. For more information, see the [Gemini Official Prompting Guide and Strategies](https://ai.google.dev/gemini-api/docs/image-generation#prompt-guide)")
|
||||
st.markdown(reference_prompt)
|
||||
st.info("Note: The example prompt is for reference only. You can provide your own description of the edits you want to make to the image. Gemini Official Prompting Guide and Strategies: https://ai.google.dev/gemini-api/docs/image-generation#prompt-guide")
|
||||
|
||||
with st.spinner("Loading image..."):
|
||||
# display the uploaded image
|
||||
image = Image.open(uploaded_image)
|
||||
st.image(image, width= 300)
|
||||
st.success("Image uploaded successfully!")
|
||||
|
||||
edit_description = st.text_area("Describe the edits you want to make to the image", height="content",)
|
||||
if st.button("AI Editing"):
|
||||
if edit_description.strip() == "":
|
||||
|
||||
Reference in New Issue
Block a user