เมื่อ AI สามารถแปลงภาพ GUI ของหน้าจอโปรแกรม ให้กลายเป็นซอร์โค้ดได้ ต่อไปมันคงมาเป็นผู้ช่วยโปรแกรมเมอร์ฝั่ง Front-end ก็ได้นะ...หรือจะแย่งงานเราในอนาคตเปล่าหว้า ก็ไม่รู้ซินะ
ก่อนหน้านี้แอดได้ลงข่าวงานวิจัยของโปรเจค DeepCoder จากไมโครซอฟต์ และ Cambridge ที่ใช้ AI เป็น Deep learning สามารถเขียนโปรแกรมขึ้นมาเอง เพียงแค่ดูซอร์สโค้ดตัวอย่าง ซึ่งสร้างความฮือฮามาแล้วรอบหนึ่ง
คราวนี้เป็นงานวิจัยสดๆ ร้อน เขาได้สนอวิธีการใหม่ในการเขียนโค้ด ที่ตั้งชื่อว่า pix2Code (ก็คงมาจากชื่อเต็ม Pixel to source code)
pix2Code มันเป็นวิธีสร้างซอร์สดโค้ด จากภาพหน้าจอ GUI ของโปรแกรม ก็ที่ทีมกราฟฟิกดีไซน์ออกแบบให้พวกเราชาวโปรแกรมเมอร์ ได้นำไปเขียนโปรแกรมนั่นแหละ ...เรียกว่า ตอนนี้ขอมีแค่ภาพอย่างเดียว ตัว AI ก็ Generate ซอร์สโค้ดให้ใช้งานอย่างอัตโนมัติ สบายปรื๋อ!!!!
จากนั้นพวกเราจะเอาโค้ดไปเขียน Back-end ต่อ จะพัฒนาซอฟต์แวร์ เว็บไซต์ โมบายแอพ จะทำอะไร ก็แล้วแต่เราอีกที
ในทางเทคนิคโดยย่อของงานวิจัยชิ้นนี้ pix2Code จะใช้ AI เป็น Deep learning ซึ่งข้างในเป็นโมเดล CNN กับ LSTM ใช้สองเทคนิคผสมกัน มาช่วยสร้างโค้ดจาก input ซึ่งเป็นภาพไฟล์รูปภาพ โดยโค้ดที่ถูกสร้างออกมาจะแบ่งเป็น 3 แพลท์ฟอม ได้แก่ iOS, Android และเว็บ (HTML/CSS)
ทว่าปัจจุบันเทคนิคนี้ยังให้ความถูกต้องแค่ 77%
...อะฮะ ตอนนี้อาจสร้างโค้ดได้ไม่แม่นเท่าไรแฮะ (ใจเย็นๆ โปรแกรมเมอร์ยังไม่ตกงานง่ายๆ) แต่ถ้ามีใครพัฒนาต่อไป ก็อาจแม่นยำมากขึ้น หรืออาจมี paper ที่ใช้ AI เขียนโปรแกรมอัตโนมัติ ทำนองเดียวกันนี้มากขึ้น เพื่อมาเขย่าขาเก้าอี้โปรแกรมเมอร์เรื่อยๆ ก็ได้
ใครสนใจดูวีดีโอ สาธิตการใช้เทคนิคนี้ ก็ดูได้ที่ลิงค์ จะเห็นว่า แค่วาดรูปหน้าจอ แล้วก็รันออกมาเป็นโค้ดบนแพลทฟอร์ม iOS กับตัวอย่างสร้างเป็นไฟล์ HTML
https://www.youtube.com/watch?v=pqKeXkhFA3I&feature=youtu.be
ส่วนต้นฉบับ Paper ของคุณ Tony Beltramelli เผื่อใครสนใจจะนำไปพัฒนาต่อ
https://arxiv.org/abs/1705.07962
https://github.com/tonybeltramelli/pix2code
ปล. เสียดายเข้าไปดู Github แล้ว เขาไม่มีซอร์สโค้ดแจกให้ เลยอดลองรันเล่นเลย 555
++++++++++++++++++++++++++++
อ่อ AI ในที่นี้ ไม่ใช่ Adobe Illustrator ชื่อย่อเหมือนกัน แต่คนละความหมาย
同時也有3部Youtube影片,追蹤數超過12萬的網紅狗魚,也在其Youtube影片中提到,subgoal: https://agentc0re.com/Sub-Counter 訂閱通知: https://streamlabs.com/ 聊天室CSS: body { background-color: transparent !important; } /* Transparent ...
input type css 在 卡斯伯 Facebook 八卦
將 input type="range" 修改成音量調節樣式
input type css 在 狗魚 Youtube 的評價
subgoal: https://agentc0re.com/Sub-Counter
訂閱通知: https://streamlabs.com/
聊天室CSS:
body {
background-color: transparent !important;
}
/* Transparent background. */
yt-live-chat-renderer {
background-color: transparent !important;
}
/* Outlines */
yt-live-chat-renderer * {
text-shadow: -2px -2px #000000,-2px -1px #000000,-2px 0px #000000,-2px 1px #000000,-2px 2px #000000,-1px -2px #000000,-1px -1px #000000,-1px 0px #000000,-1px 1px #000000,-1px 2px #000000,0px -2px #000000,0px -1px #000000,0px 0px #000000,0px 1px #000000,0px 2px #000000,1px -2px #000000,1px -1px #000000,1px 0px #000000,1px 1px #000000,1px 2px #000000,2px -2px #000000,2px -1px #000000,2px 0px #000000,2px 1px #000000,2px 2px #000000;
font-family: "Laila";
font-size: 18px !important;
line-height: 18px !important;
}
yt-live-chat-text-message-renderer #content ,
yt-live-chat-legacy-paid-message-renderer #content {
overflow: initial; !important
}
/* Hide scrollbar. */
yt-live-chat-item-list-renderer #items {
overflow:hidden !important;
}
/* Hide header and input. */
yt-live-chat-header-renderer,
yt-live-chat-message-input-renderer {
display: none !important;
}
/* Reduce side padding. */
yt-live-chat-text-message-renderer,
yt-live-chat-legacy-paid-message-renderer {
padding-left: 4px !important;
padding-right: 4px !important;
}
/* Avatars. */
yt-live-chat-text-message-renderer #author -photo,
yt-live-chat-legacy-paid-message-renderer #author -photo { width: 25px !important;
height: 25px !important;
border-radius: 25px !important;
margin-right: 6.25px !important;
}
/* Hide badges. */
yt-live-chat-text-message-renderer #author -badges {
display: none !important;
vertical-align: text-top !important;
}
/* Timestamps. */
yt-live-chat-text-message-renderer #timestamp { color: #999999 !important;
font-family: "Imprima";
font-size: 16px !important;
line-height: 16px !important;
}
/* Badges. */
yt-live-chat-text-message-renderer #author -name[type="owner"],
yt-live-chat-text-message-renderer yt-live-chat-author-badge-renderer[type="owner"] {
color: #FFCC33 !important;
}
yt-live-chat-text-message-renderer #author -name[type="moderator"],
yt-live-chat-text-message-renderer yt-live-chat-author-badge-renderer[type="moderator"] {
color: #FF9966 !important;
}
yt-live-chat-text-message-renderer #author -name[type="member"],
yt-live-chat-text-message-renderer yt-live-chat-author-badge-renderer[type="member"] {
color: #FF9966 !important;
}
/* Channel names. */
yt-live-chat-text-message-renderer #author -name {
color: #FF9966 !important;
font-family: "Microsoft JhengHei";
font-size: 28px !important;
line-height: 28px !important;
}
yt-live-chat-text-message-renderer #author -name::after {
content: ":";
margin-left: 2px;
}
/* Messages. */
yt-live-chat-text-message-renderer #message ,
yt-live-chat-text-message-renderer #message *,
yt-live-chat-legacy-paid-message-renderer #detail -text,
yt-live-chat-legacy-paid-message-renderer #detail -text * {
color: #ffffff !important;
font-family: "Microsoft JhengHei";
font-size: 28px !important;
line-height: 28px !important;
}
/* Fan Funding Messages. */
yt-live-chat-legacy-paid-message-renderer #event -text {
color: #ffffff !important;
font-family: "Microsoft JhengHei";
font-size: 20px !important;
line-height: 20px !important;
}
yt-live-chat-legacy-paid-message-renderer #detail -text,
yt-live-chat-legacy-paid-message-renderer #detail -text * {
color: #ffffff !important;
font-family: "Imprima";
font-size: 18px !important;
line-height: 18px !important;
}
yt-live-chat-legacy-paid-message-renderer {
background-color: #00ffff !important;
margin: 4px 0 !important;
padding: 4px !important;
}
yt-live-chat-text-message-renderer a,
yt-live-chat-legacy-paid-message-renderer a {
text-decoration: none !important;
}
yt-live-chat-text-message-renderer[is-deleted],
yt-live-chat-legacy-paid-message-renderer[is-deleted] {
display: none !important;
}
____________________________________
♪ Power For Tommorow - http://www.rengoku-teien.com
____________________________________
訂閱狗魚: https://www.youtube.com/channel/UC3X3...
粉絲專頁: https://www.facebook.com/dofi13579/
狗魚精華: https://www.youtube.com/playlist?list...
合作邀約:13825774632p@gmail.com
實況委託: https://docs.google.com/forms/d/1BY8H...
![post-title](https://i.ytimg.com/vi/a2exmUXzwkc/hqdefault.jpg?sqp=-oaymwEZCNACELwBSFXyq4qpAwsIARUAAIhCGAFwAQ==&rs=AOn4CLB2WxJnMooDQ_Rl4koCgYhjjJZRLQ)
input type css 在 alwaysfluke Youtube 的評價
ซื้อมาวันแรกขอรีวิวเล็กๆ กับเจ้า sony speria acro s มือถือรุ่นใหญ่ที่กันน้ำได้
OS:Android (4.0.4)
Dimensions:4.96 x 2.60 x 0.47 (126 x 66 x 11.9 mm)
Weight:5.19 oz (147 g)
the average is 4.1 oz (117 g)
Rugged:Water (Water), Dust proof
DISPLAY
Physical size:4.30 inches
Resolution:720 x 1280 pixels
Pixel density:342 ppi
Technology:TFT
Colors:16 777 216
Touchscreen:Capacitive, Multi-touch
Features:Light sensor, Proximity sensor, Scratch-resistant glass
BATTERY
Talk time:6.66 hours
the average is 8 h (508 min)
Stand-by time:12.1 days (290 hours)
the average is 20 days (482 h)
Talk time (3G):7.16 hours
the average is 7 h (400 min)
Stand-by time (3G):12.9 days (310 hours)
the average is 22 days (527 h)
Capacity:1910 mAh
HARDWARE
System chip:Qualcomm Snapdragon S3 MSM8260
Processor:Dual core, 1500 MHz, Scorpion
Graphics processor:Adreno 220
System memory:1024 MB RAM / 16384 MB ROM
Built-in storage:11 GB
Storage expansion:Slot Type:
microSD, microSDHC
Maximum card size:32 GB
CAMERA
Camera:12.1 megapixels
Flash:LED
Aperture size:F2.4
Features:Back-illuminated sensor (BSI), Auto focus, Touch to focus, Image stabilizer, Video stabilizer, Face detection, Smile detection, White balance, Digital zoom, Geo tagging, Panorama, Self-timer
Camcorder:1920x1080 (1080p HD)
Features:Video light, Video calling
Front-facing camera:1.3 megapixels
MULTIMEDIA
Music player:
Filter by:Album, Artist, Playlists
Features:Album art cover, Background playback, Music recognition, Sound effects
Radio:FM, Stereo, RDS
Speakers:Earpiece, Loudspeaker
YouTube player:Yes
INTERNET BROWSING
Browser:Yes
Supports:HTML, HTML5, XHTML, Flash, CSS 3
Built-in online services support:Facebook, YouTube (upload), Picasa, Twitter
TECHNOLOGY
GSM:850, 900, 1800, 1900 MHz
UMTS:850, 900, 1900, 2100 MHz
Data:HSDPA 14.4 Mbit/s, HSUPA 5.76 Mbit/s, UMTS, EDGE, GPRS
Positioning:GPS, Glonass
Navigation:Turn-by-turn navigation
PHONE FEATURES
Phonebook:Unlimited entries, Caller groups, Multiple numbers per contact, Search by both first and last name, Picture ID, Ring ID
Organizer:Calendar, Alarm, Document viewer (Office 2007, Office 2003, PDF), Flashlight, Calculator, Stopwatch
Messaging:SMS, MMS, Threaded view, Predictive text input
E-mail:IMAP, POP3, SMTP, Microsoft Exchange
CONNECTIVITY
Bluetooth:3.0
Wi-Fi:802.11 b, g, n
Mobile hotspot:Yes
USB:USB 2.0
Connector:microUSB
Features:Mass storage device, USB charging
HDMI:Yes
Other:NFC, DLNA, Tethering, Computer sync, OTA sync
OTHER FEATURES
Notifications:Music ringtones (MP3), Polyphonic ringtones, Vibration, Flight mode, Silent mode, Speakerphone
Sensors:Accelerometer, Compass
Voice dialing, Voice commands, Voice recording
![post-title](https://i.ytimg.com/vi/MZJj9Hwa0Ok/hqdefault.jpg)
input type css 在 小豆 Youtube 的評價
CSS碼 ↓
/* Background colors*/
body {
background-color: rgba(0,0,0,0);
}
/* Transparent background. */
yt-live-chat-renderer {
background-color: transparent !important;
}
/* Outlines */
yt-live-chat-renderer * {
text-shadow: -2px -2px #000000,-2px -1px #000000,-2px 0px #000000,-2px 1px #000000,-2px 2px #000000,-1px -2px #000000,-1px -1px #000000,-1px 0px #000000,-1px 1px #000000,-1px 2px #000000,0px -2px #000000,0px -1px #000000,0px 0px #000000,0px 1px #000000,0px 2px #000000,1px -2px #000000,1px -1px #000000,1px 0px #000000,1px 1px #000000,1px 2px #000000,2px -2px #000000,2px -1px #000000,2px 0px #000000,2px 1px #000000,2px 2px #000000;
font-family: "Microsoft JhengHei";
font-size: 24px !important;
line-height: 24px !important;
}
yt-live-chat-text-message-renderer #content ,
yt-live-chat-legacy-paid-message-renderer #content {
overflow: initial; !important
}
/* Hide scrollbar. */
yt-live-chat-item-list-renderer #items {
overflow: hidden !important;
}
yt-live-chat-item-list-renderer #item -scroller{
overflow: hidden !important;
}
/* Hide header and input. */
yt-live-chat-header-renderer,
yt-live-chat-message-input-renderer {
display: none !important;
}
/* Reduce side padding. */
yt-live-chat-text-message-renderer,
yt-live-chat-legacy-paid-message-renderer {
padding-left: 4px !important;
padding-right: 4px !important;
}
yt-live-chat-paid-message-renderer #header {
padding-left: 4px !important;
padding-right: 4px !important;
}
/* Avatars. */
yt-live-chat-text-message-renderer #author -photo,
yt-live-chat-paid-message-renderer #author -photo,
yt-live-chat-legacy-paid-message-renderer #author -photo {
width: 30px !important;
height: 30px !important;
border-radius: 30px !important;
margin-right: 7.5px !important;
}
/* Hide badges. */
yt-live-chat-text-message-renderer #author -badges {
display: none !important;
vertical-align: text-top !important;
}
/* Timestamps. */
yt-live-chat-text-message-renderer #timestamp {
color: #999999 !important;
font-family: "Microsoft JhengHei";
font-size: 12px !important;
line-height: 12px !important;
}
/* Badges. */
yt-live-chat-text-message-renderer #author -name[type="owner"],
yt-live-chat-text-message-renderer yt-live-chat-author-badge-renderer[type="owner"] {
color: #ffd600 !important;
}
yt-live-chat-text-message-renderer #author -name[type="moderator"],
yt-live-chat-text-message-renderer yt-live-chat-author-badge-renderer[type="moderator"] {
color: #5e84f1 !important;
}
yt-live-chat-text-message-renderer #author -name[type="member"],
yt-live-chat-text-message-renderer yt-live-chat-author-badge-renderer[type="member"] {
color: #0f9d58 !important;
}
/* Channel names. */
yt-live-chat-text-message-renderer #author -name {
color: #FF9966 !important;
font-family: "Microsoft JhengHei";
font-size: 28px !important;
line-height: 28px !important;
}
yt-live-chat-text-message-renderer #author -name::after {
content: ":";
margin-left: 2px;
}
/* Messages. */
yt-live-chat-text-message-renderer #message ,
yt-live-chat-text-message-renderer #message * {
color: #ffffff !important;
font-family: "Microsoft JhengHei";
font-size: 28px !important;
line-height: 28px !important;
}
/* SuperChat/Fan Funding Messages. */
yt-live-chat-paid-message-renderer #author -name,
yt-live-chat-paid-message-renderer #author -name *,
yt-live-chat-legacy-paid-message-renderer #event -text,
yt-live-chat-legacy-paid-message-renderer #event -text * {
color: #ffd600 !important;
font-family: "Microsoft JhengHei";
font-size: 28px !important;
line-height: 28px !important;
}
yt-live-chat-paid-message-renderer #purchase -amount,
yt-live-chat-paid-message-renderer #purchase -amount *,
yt-live-chat-legacy-paid-message-renderer #detail -text,
yt-live-chat-legacy-paid-message-renderer #detail -text * {
color: #ffd600 !important;
font-family: "Microsoft JhengHei";
font-size: 28px !important;
line-height: 28px !important;
}
yt-live-chat-paid-message-renderer #content ,
yt-live-chat-paid-message-renderer #content * {
color: #ffffff !important;
font-family: "Microsoft JhengHei";
font-size: 30px !important;
line-height: 30px !important;
}
yt-live-chat-paid-message-renderer {
margin: 4px 0 !important;
}
yt-live-chat-legacy-paid-message-renderer {
background-color: #0f9d58 !important;
margin: 4px 0 !important;
}
yt-live-chat-text-message-renderer a,
yt-live-chat-legacy-paid-message-renderer a {
text-decoration: none !important;
}
yt-live-chat-text-message-renderer[is-deleted],
yt-live-chat-legacy-paid-message-renderer[is-deleted] {
display: none !important;
}
yt-live-chat-ticker-renderer {
background-color: transparent !important;
box-shadow: none !important;
}
yt-live-chat-ticker-paid-message-item-renderer,
yt-live-chat-ticker-paid-message-item-renderer *,
yt-live-chat-ticker-sponsor-item-renderer,
yt-live-chat-ticker-sponsor-item-renderer * {
color: #ffd600 !important;
font-family: "Microsoft JhengHei";
}
![post-title](https://i.ytimg.com/vi/f-468cwubfs/hqdefault.jpg?sqp=-oaymwEZCNACELwBSFXyq4qpAwsIARUAAIhCGAFwAQ==&rs=AOn4CLD-_WAz80qeCgdXXcR2qhixZ2bUxA)
input type css 在 Align HTML input fields WITHOUT table; use CSS, JSF ... 的八卦
Use css's selectors, position:absolute, and margin-left to make input fields flush, without using the HTML ... ... <看更多>