本帖最后由 云天 于 2023-7-31 16:46 编辑  【项目背景】 https://creator.nolibox.com/creator ),利用提示词:花海 日落 古代 战士,生成的AI图【项目设计】 【项目硬件】 (提示词:梅 兰 竹 菊)
【语音识别】 APPID、 APISecret、 APIKey。 【AI绘画电脑版】 https://flagopen.baai.ac.cn 注册获取apikey。
  
 #导入相关库
 import requests
 import json
 import base64
 import cv2
 import numpy as np
 from alive_progress import alive_bar
 import time
  
 while True:
     u="https://flagopen.baai.ac.cn/flagStudio/auth/getToken"
     param={"apikey":"aee3672220ec348b3b3dfaa7956a8282"}
     token_response=requests.get(url=u,params=param)
     token_json=json.loads(token_response.text)
     token=token_json['data']['token']
  
 #调用api
     u = "https://flagopen.baai.ac.cn/flagStudio/v1/text2img"
     prompt=input("请输入你的创意:")
     param={"prompt":prompt,"steps":80,"style":"国画","width":512,"height":512}
     header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36",
         "Accept": "application/json",
         "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
         "X-Requested-With": "XMLHttpRequest",
         "token":token}
     response=requests.post(url=u,json=param,headers=header)
     print('AI正在绘画中...')
  
     img_json=json.loads(response.text)
     img=img_json['data']
     img=base64.b64decode(img)
  
  
     imgstring = np.array(img).tobytes()
     imgstring = np.asarray(bytearray(imgstring), dtype="uint8")
     image = cv2.imdecode(imgstring, cv2.IMREAD_COLOR)
     mylist = range(0,30)
     with alive_bar(len(mylist)) as bar: 
         for i in mylist: 
             bar() 
             time.sleep(0.5)
     print('绘制完成')
     cv2.imshow('result',image)
     cv2.waitKey(0)
     cv2.destroyAllWindows()
 复制代码 【行空板AI绘画测试】 (提示词:奔腾的俊马)
(提示词:可爱的兔子)^_^
(提示词:海上日落)^_^
测试演示视频 【行空板AI绘画】 
 #  -*- coding: UTF-8 -*-
 
 # MindPlus
 # Python
 from pinpong.extension.unihiker import *
 import requests,json,base64,cv2,time
 from pinpong.board import Board,Pin
 from unihiker import Audio
 from unihiker import GUI
 import numpy as np
 import xunfeiasr
 import math
 import cv2
 
 
 u_gui=GUI()
 Board().begin()
 u_audio = Audio()
 p_p21_in=Pin(Pin.P21, Pin.IN)
 xunfeiasr.xunfeiasr_set(APPID="d41ee990",APISecret="NmFkZjdhM2U3ZmU5ZmNlN2FjOGJmYjY4",APIKey="d551eafc91a585a49beabe7ad3644ca4")
 ShiBieNaRong = 0
 BiaoShi = 0
 AnNiuBiaoShi = 0
 识别显示=u_gui.draw_text(text="行空板AI画",x=25,y=120,font_size=30, color="#0000FF")
 
 while True:
     if (not (ShiBieNaRong == 0)):
         if (BiaoShi == 1):
             BiaoShi = 0
             buzzer.play(buzzer.DADADADUM,buzzer.Once)
     if (p_p21_in.read_digital()==True):
         if (AnNiuBiaoShi == 0):
             AnNiuBiaoShi = 1
             u_gui.clear()
             识别显示=u_gui.draw_text(text="正在录音……",x=15,y=120,font_size=30, color="#0000FF")
             ShiBieNaRong = 0
             u_audio.record("record.wav",4)
             BiaoShi = 1
             识别显示.config(text="正在识别……")
             ShiBieNaRong = xunfeiasr.xunfeiasr(r"record.wav")
             识别显示.config(text=ShiBieNaRong)
     else:
         if (AnNiuBiaoShi == 1):
             AnNiuBiaoShi = 0
             识别显示.config(text="AI绘画中...")
             u="https://flagopen.baai.ac.cn/flagStudio/auth/getToken"
             param={"apikey":"dc267e87afd46df5265544412f2ee40d"}
             token_response=requests.get(url=u,params=param)
             token_json=json.loads(token_response.text)
             token=token_json['data']['token']
             prompt = ShiBieNaRong
             u = "https://flagopen.baai.ac.cn/flagStudio/v1/text2img"
             param={"prompt":prompt,"steps":80,"style":"国画","width":512,"height":512}
             header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36","Accept": "application/json","Content-Type": "application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With": "XMLHttpRequest","token":token}
             response=requests.post(url=u,json=param,headers=header)
             img_json=json.loads(response.text)
             img=img_json['data']
             img=base64.b64decode(img)
             imgstring = np.array(img).tobytes()
             imgstring = np.asarray(bytearray(imgstring), dtype="uint8")
             image = cv2.imdecode(imgstring, cv2.IMREAD_COLOR)
             进度条=u_gui.fill_rect(x=0,y=200,w=0,h=30,color="#FF0000")
             for my_variable in range(1, 11):
                 进度条.config(w=(math.ceil((240 * (my_variable / 10)))))
                 time.sleep(0.2)
             进度条.remove()
             image=cv2.resize(image,(240,320))
             cv2.imwrite("img.png", image)
             AI图=u_gui.draw_image(image="img.png",x=0,y=0)
 
 
 复制代码 【演示视频】