Spaces:
Runtime error
Runtime error
File size: 3,230 Bytes
853793f 1541267 b25019c 853793f feb2054 853793f b25019c 853793f feb2054 853793f feb2054 853793f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 |
import collections
from numpy.core.defchararray import lower
import streamlit as st
import numpy as np
import pandas as pd
import zipfile
import io
import os
from streamlit.elements.image import image_to_url
import gzip
import requests
from io import BytesIO
from PIL import Image, ImageDraw
import base64
import datetime
import random, os, time
import threading
#List of files to use for each image object, 40 images total
files = [None]*40
def randomFile(ix):
path = r"exampleImages"
dd = list(os.listdir(path))
random.shuffle(dd)
#Parse through each file in directory
for file in dd:
#If file is not in files list, use it for next image
if file not in files:
files[ix] = file
return "exampleImages/"+file
def gen(_p):
if(_p is not False):
st.session_state.prompt = _p
st.session_state.page = 0
return
_1 = ["A modern ","A post-modern ","A classical ", "A contemporary ", "A minimalist "]
_2 = ["museum architecture","home architecture","interior design"]
_3 = [""," in the style of I.M. Pei"," in the style of Frank Gehry"," in the style of John Lautner"," in the style of Frank Lloyd Wright"]
_4 = [" photograph",", watercolor painting",", oil painting", ", digital art"]
st.session_state.prompt = str(random.choice(_1)+random.choice(_2)+random.choice(_3)+random.choice(_4))
st.session_state.page = 0
def app():
#Array of image objects
images = []
for i in range(30):
files.append( randomFile(i) )
placeholder = st.empty()
with placeholder.container():
columns = [col1, col2, col3, col4, col5] = st.columns(5)
ix = 0
for column in columns:
with column:
for i in range(2):
images.append( st.empty() )
with images[ix].container():
st.image("exampleImages/"+files[ix])
ix += 1
st.title('AI-Generated Architecture')
prompt = st.text_input(label="Describe the architecture you want to see",value="")
c1,c2,c3 = st.columns(3)
with c1:
if st.button("Generate Architecture"):
if prompt:
gen(prompt)
elif prompt == "":
gen(False)
return
with c2:
if st.button("Random Prompt"):
gen(False)
return
st.text("")
columns2 = [col1, col2, col3, col4, col5] = st.columns(5)
for column in columns2:
with column:
for i in range(4):
images.append( st.empty() )
with images[ix].container():
st.image("exampleImages/"+files[ix])
ix += 1
last = -1
while(True):
ch = random.randrange(30)
with images[ch].container():
st.image(randomFile(ch))
time.sleep(0.33)
#download_thread = threading.Thread(target=background, name="Downloader")
#download_thread.start()
|