微信小程序入门-随机人脸生成

2023-11-15

微信小程序入门-随机人脸生成

开发背景

this person does not exist
这个网站起源于英伟达公司研究人员们打造的AI机器人——其能够生成随机且极为逼真的人脸图像,而实际上这些人脸并不存在于现实世界。
如下图所示是该网站生成的一个随机人脸图像。
随机人脸图像在页面中的右下角有相关介绍
Imagined by a GAN (generative adversarial network) StyleGAN2 (Dec 2019) - Karras et al. and Nvidia
图片由生成式对抗网络(简称GAN)构建而成。
刚好最近在学习微信小程序的开发,于是想到结合这个网站,做一个随机人脸生成的小程序。

工具准备

  1. 微信开发者工具
    微信开发者工具下载链接
    注意选择稳定版及适合自己的平台
    微信开发者工具2. this person does not exist
    该网站的网址,用于微信小程序获取图片

微信小程序开发过程

完成效果图
开发界面左侧就是微信小程序的运行界面,界面中的元素包括一张图,三行文本,两个按钮。相对来说比较简单。
小程序开发小知识

  1. 全局文件,分别是app.js app.json app.wxss,用于定义整个小程序的内容风格等
  2. Pages目录文件(作用是用来放各个页面的)
  3. index页面目录文件{包含4个文件}
    (1)js:页面逻辑实现
    (2)json: 负责标题栏和一些状态栏
    (3)wxml: 管理页面有什么
    (4)wxss: 页面排布
    随机人脸生成小程序只有一个页面,结构比较简单,下面直接给出源代码
    在这里插入图片描述app.json
{
  "pages": [
    "pages/index/index"
  ],
  "window": {
    "navigationBarBackgroundColor": "#ffffff",
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "随机人脸生成",
    "backgroundColor": "#eeeeee",
    "backgroundTextStyle": "light",
    "enablePullDownRefresh": false
  },
  "sitemapLocation": "sitemap.json"
}

index.wxml

<!--pages/index/index.wxml-->
<view class="container">
  <image src='{{src}}' data-url="{{src}}" bindlongpress="saveImage" class="img"></image>
  <text>{{text1}}</text>
  <text>{{text2}}</text>
  <view class="btncon">
    <button bindtap="showclick">显示</button>
    <button bindtap="genclick">生成</button>
  </view>
  <text class="ver">by hs</text>
</view>

index.js

// pages/index/index.js
Page({
  /**
   * 页面的初始数据
   */
  data: {
    text1:'welcome to The Matrix',
    text2: '请点击“生成”按钮',
    src:'/images/init1.jpg'
  },
  showclick:function(){
    console.log('flash clicked');
    this.setData({
      text2:'请稍等...',
      src: 'https://thispersondoesnotexist.com/image'
    });
  },
  genclick:function()
  {
    console.log('back clicked');
    this.setData({
      text2: '请点击“显示”按钮',
      src: '/images/init1.jpg'
    });
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  },
/* pages/index/index.wxss */
.container{
  height: 90vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
}
.btncon{
  display: flex;
  flex-direction: row;
}
.img{
  width: 500rpx;/*图片宽度*/
}
text{
  font-size: 50rpx;/*字体大小*/
  color: green;
  /* background-color: blue; */
}
.ver{
  font-size: 30rpx;/*字体大小*/
  color: black;
}

其余相关文件无需更改。
其中images文件夹主要存放了界面开始的那张数字矩阵的图,读者可随意更改为自己喜欢的图

我还没有发布,还在测试期,有兴趣的朋友可以加入测试哦

嘻嘻,谢谢观看
2020.12.15更新:
不好意思,由于账号没有维护,已经冻结,需要体验的朋友们等我解封冻结的账号再来吧~

2021.5.8更新:
帐号已经找回,需要体验的话,可以在小程序直接搜索:栎山村style

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信小程序入门-随机人脸生成 的相关文章

随机推荐

  • upload-labs:pass-10

    is upload false msg null if isset POST submit if file exists UPLOAD PATH deny ext array php php5 php4 php3 php2 html htm
  • 工厂三兄弟之工厂方法模式(四)

    5 重载的工厂方法 Sunny公司开发人员通过进一步分析 发现可以通过多种方式来初始化日志记录器 例如可以为各种日志记录器提供默认实现 还可以为数据库日志记录器提供数据库连接字符串 为文件日志记录器提供文件路径 也可以将参数封装在一个Obj
  • Puppeteer 安装与注意事项 《一》

    Puppeteer 安装与注意事项 1 安装node js 在使用puppeteer的时候 它一些低版本的node是不支持的 作者推荐使用8以上的版本 否则node在后面使用puppeteer的时候会 抛出 SyntaxError Unex
  • 从外部验证安全密码存储

    许多网站 包括 Adobe Yahoo LinkedIn Gawker等大型网站 不安全地存储用户密码 可以是纯文本格式的 也可以是加密的 可逆的 格式 或者是使用残破或蛮力的哈希函数 许多网站的密码存储机制仍然很差 所以呢 好吧 如果数据
  • js生成柱状图

  • 内存泄露的检测方法

    本文来自http blog csdn net lijun84 引用必须注明出处 在谈及内存泄漏时 对于没有太多经验的新人来说总是很头疼的一件事 因为如果项目早期没有将其纳入代码框架 后期部署上线之后 仅从进程 crash 的 dump 很难
  • openGauss学习笔记-36 openGauss 高级数据管理-TRUNCATE TABLE语句

    文章目录 openGauss学习笔记 36 openGauss 高级数据管理 TRUNCATE TABLE语句 36 1 语法格式 36 2 参数说明 36 3 示例 openGauss学习笔记 36 openGauss 高级数据管理 TR
  • Docker部署Emqx并配置ssl支持微信小程序

    1 端口介绍 1883 MQTT 协议端口 8084 MQTT SSL 端口 8083 MQTT WebSocket 端口 8080 HTTP API 端口 18083 Dashboard 管理控制台端口 2 拉取镜像 docker pul
  • 算法与数据结构—LeetCode刷题笔记

    算法刷题笔记 一 动态规划 53 最大子序和 300 最长上升子序列 70 爬楼梯 242 有效的字母异位词 463 岛屿的周长 文章与视频资源多平台更新 微信公众号 知乎 B站 头条 AI研习图书馆 一 动态规划 53 最大子序和 典型的
  • js执行时序 宏任务和微任务

    宏任务一般是 包括整体代码script setTimeout setInterval I O UI render 微任务主要是 Promise Object observe MutationObserver process nextTick
  • 【MySQL高性能】MyCat 2.分片策略以及原理分析

    简介 数据库分片可以把他理解成分库 将一张表拆分到多个数据库中 通常是在表数据大的情况进行拆分 根据InnerDB索引原理 主键索引类型bigint计算得出一张表达到2千万就需要进行拆分了 当然也需要提前做好拆分 数据量大查询效率会慢 阿里
  • android kernel devices睡眠唤醒调试

    主要是在kernel添加关键log 获取有用信息 可以调试suspend resume earlysuspend lateresume等方面的问题 如哪一过程时间过长 跟踪log才可以很好定位问题 解决问题 1 early suspend
  • PermissionError: [WinError 5] 拒绝访问

    使用Pycharm运行时 报错 PermissionError WinError 5 拒绝访问 但是使用终端 Terminal 运行就没有问题 尝试方案 三步解决python PermissionError WinError 5 拒绝访问的
  • vue 报错:Invalid prop: type check failed for prop “xxx“. Expected String with value “1“,Number...

    期望的是String类型 但是传的值是Number 类型 如果你传的是number类型的你需要先转化为字符串就可以了 改成
  • python 爬虫刷浏览量(单线程)---仅供学习目的,切莫有其他想法

    重要的事情说三遍 仅供学习使用 若有其他想法 请出门右转 仅供学习使用 若有其他想法 请出门右转 仅供学习使用 若有其他想法 请出门右转 准备 简单的网站浏览量无非就是访问次数 那么一直按F5就可以 做得比较好的网站会根据 ip 计算浏览量
  • (无需编译)使用官方prebuilt文件在win10下配置caffe for python

    网上给出的caffe安装教程基本上需要自己编译 我在编译的过程中遇到很多问题 弄了很久也没有配置好 然而官方给出了prebuilt的版本 网址 BVLC caffe at windows 之前看到过prebuilt版本但一直不知道怎么使用
  • Linux系统调用--fcntl函数详解

    Linux系统调用 fcntl函数详解 2007 11 06 15 09 分类 ARM Linux应用程序 今天在看 Linux设备驱动程序 第3版 碰到了fcntl系统调用 以前没接触过 在网上查到了这份资料 转载自 企鹅乐园 雅虎群组
  • arcgis10之获取面要素中心点坐标

    第一步 获取中心的文件 第二步 新建两个存储中心点做坐标的字段 第三步 计算要要素中心的xy坐标 同理 计算中心点Y坐标即可
  • 定义表单规则(判断两次密码输入是否一致)

    主要代码 required true validator validateRepassword trigger change export default name form data var validateRepassword rule
  • 微信小程序入门-随机人脸生成

    微信小程序入门 随机人脸生成 开发背景 工具准备 微信小程序开发过程 开发背景 this person does not exist 这个网站起源于英伟达公司研究人员们打造的AI机器人 其能够生成随机且极为逼真的人脸图像 而实际上这些人脸并