สารบัญ:
- ขั้นตอนที่ 1: รับบัญชี Google API
- ขั้นตอนที่ 2: ป้อนข้อมูลการเรียกเก็บเงิน
- ขั้นตอนที่ 3: เปิดไลบรารี API
- ขั้นตอนที่ 4: ค้นหา Google Vision API
- ขั้นตอนที่ 5: นำทางไปยังข้อมูลประจำตัว
- ขั้นตอนที่ 6: สร้างคีย์ Google Vision API
- ขั้นตอนที่ 7: การตั้งค่าด้านข้าง Raspberry Pi
- ขั้นตอนที่ 8: ตั้งค่าโครงการ
- ขั้นตอนที่ 9:
- ขั้นตอนที่ 10:
- ขั้นตอนที่ 11: และอีกมากมาย…
วีดีโอ: Google Vision API โดยใช้ Raspberry Pi และ Node: 11 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
นี่คือคู่มือเริ่มต้นใช้งาน Google Vision API มันใช้สิ่งต่อไปนี้
- Raspberry Pi Zero W
- Arch Linux
- NodeJS
- การเชื่อมต่ออินเทอร์เน็ต
ไม่รู้จัก Arch Linux? หรือจะตั้งค่า Raspberry Pi ได้อย่างไร? ไม่ต้องกังวล ฉันได้เขียนบทความหลายชุดที่ครอบคลุมอย่างรวดเร็ว การตั้งค่าง่ายกว่าที่คุณคิด ดังนั้นอย่าปล่อยให้มันห้ามปรามคุณ
- การติดตั้ง Arch Linux บน Raspberry Pi ด้วยการเข้าถึง WiFi ทันที
- ตั้งค่า i2c บน Raspberry Pi Zero W โดยใช้ Arch Linux
- ตั้งค่า NodeJS Project Space บน Raspberry Pi Zero W
- กำลังย้ายรหัสไดรเวอร์มอเตอร์ DRV8830 I2C ไปยัง NodeJS
- การแก้ไข Raspberry Pi Code จากระยะไกลจาก Visual Studio Code
- หุ่นยนต์ 1B1
ภาพหน้าปกโดย Andy Kelly บน Unsplash
ขั้นตอนที่ 1: รับบัญชี Google API
น่าเศร้าที่ Google Vision API ไม่ใช่บริการฟรีทั้งหมด ในขณะที่เขียนบัญชี API จะให้บริการเรียก Google Vision API ฟรี 1,000 ครั้งต่อเดือน จากนั้นเป็น $1.00 ต่อการโทร 1,000 ครั้ง
ฉันรู้ ฉันรู้ ไม่ได้เลวร้ายอะไร แต่นี่ไม่ใช่โครงการเชิงพาณิชย์ ฉันต้องการใช้มันสำหรับพัตเตอร์บ้านตัวเล็ก ถ้าภรรยาของฉันได้รับเงิน 40 ดอลลาร์เพราะฉันตัดสินใจสตรีมรูปภาพไปยัง API มันจะเป็นบอทที่ตายแล้ว อย่างไรก็ตาม ฉันคิดว่าฉันยังคงสำรวจบริการสำหรับอึและหัวเราะคิกคัก
เพื่อรับการเยี่ยมชมบัญชี
Google Console
และลงชื่อเข้าใช้ด้วยบัญชี Google ที่มีอยู่หรือสร้างบัญชีใหม่
ขั้นตอนที่ 2: ป้อนข้อมูลการเรียกเก็บเงิน
นี่คือส่วนที่น่ากลัว คุณต้องป้อนข้อมูลสำหรับการเรียกเก็บเงินของคุณก่อนที่จะไป โปรดจำไว้ว่า คุณจะถูกเรียกเก็บเงินหากคุณโทรเกิน 1,000 ครั้ง ย้ำอีกครั้ง หากคุณโทรเกิน 1,000 สายฟรี คุณจะถูกเรียกเก็บเงิน (อะไรนะ ฉันพูดไปแล้วเหรอ?)
ขั้นตอนที่ 3: เปิดไลบรารี API
หลังจากตั้งค่าข้อมูลการเรียกเก็บเงินแล้ว เรายังต้องเปิดใช้งาน Cloud Vision API นี่เป็นคุณลักษณะด้านความปลอดภัย โดยพื้นฐานแล้ว Google API ทั้งหมดจะถูกปิดใช้งานโดยค่าเริ่มต้น ดังนั้นหากมีคนเข้าถึงโดยไม่ได้ตั้งใจ พวกเขาจะไม่ปล่อยนรกไปทุกที่
ขั้นตอนที่ 4: ค้นหา Google Vision API
ตอนนี้ค้นหา Vision แล้วคลิกปุ่ม ที่นี่ควรมีปุ่มเปิดใช้งานที่มองเห็นได้ชัดเจน กดเลย
ขั้นตอนที่ 5: นำทางไปยังข้อมูลประจำตัว
สิ่งสุดท้ายที่เราต้องทำคือรับคีย์ API สิ่งนี้จะต้องรวมอยู่ในส่วนหัวการเรียก API สำหรับการตรวจสอบสิทธิ์
อย่าให้ใครได้รับคีย์ API ของคุณ และอย่าฮาร์ดโค้ดในโค้ดของคุณ เชื่อฉันเถอะว่ามันจะกัดคุณ หากสิ่งนี้ถูกผลักเข้าสู่เว็บโดยไม่ได้ตั้งใจ โปรแกรมรวบรวมข้อมูลเว็บจะพบมันอย่างรวดเร็ว และคุณจะต้องจ่ายเงินหลายพันล้านเหรียญ
ให้บทความนี้ทำให้คุณตกใจเล็กน้อย
นักพัฒนาวางคีย์ AWS บน Github
ตกลง! ไปรับคีย์ API ของคุณกันเถอะ ค้นหาส่วนข้อมูลรับรอง
ขั้นตอนที่ 6: สร้างคีย์ Google Vision API
คุณอาจไม่เห็นข้อมูลประจำตัวที่สร้างขึ้น เนื่องจากคุณอาจยังไม่ได้สร้างข้อมูลรับรองใดๆ
มาสร้างคีย์ API ใหม่กัน ฉันจะตั้งชื่อคีย์ให้มีความหมายและจำกัดไว้เฉพาะ Google Cloud API เท่านั้น ไปข้างหน้าและคัดลอกคีย์ API ของคุณ เนื่องจากเราต้องการมันในขั้นตอนต่อไป
ขั้นตอนที่ 7: การตั้งค่าด้านข้าง Raspberry Pi
บทความที่ระบุไว้ที่ด้านบนของบทความนี้จะช่วยคุณตั้งค่า Raspberry Pi สำหรับขั้นตอนนี้ แต่ถ้าคุณทำสิ่งที่แตกต่างออกไป สิ่งเหล่านี้ส่วนใหญ่ก็ยังใช้ได้ผลสำหรับคุณ อย่างไรก็ตาม เมื่อเราพูดถึงตัวแปรสภาพแวดล้อมแล้ว ลินุกซ์รุ่นอื่นๆ จะมีความแตกต่างกัน
เริ่มต้นด้วย SSH ลงใน Pi ของคุณ
และอัพเดททุกแพ็คเกจ
sudo pacman -Syu
เราจะสร้างตัวแปรสภาพแวดล้อมสำหรับ Google Cloud Vision API นี่คือเพื่อหลีกเลี่ยงการฮาร์ดโค้ดคีย์ API ของคุณลงในโค้ดด้านล่าง ที่จะใช้งานได้ แต่ฉันขอแนะนำอย่างยิ่งให้คุณติดกับฉันและตั้งค่าตัวจัดการตัวแปรสภาพแวดล้อมเพื่อจัดการ API
เปลี่ยนเป็นผู้ใช้รูทโดยพิมพ์
ซู
ป้อนรหัสผ่านของคุณ
สิ่งต่อไปที่เราทำคือเพิ่มคีย์ Google Vision API ของคุณเป็นตัวแปรสภาพแวดล้อมให้กับ
/etc/profile
ไฟล์นี้ควรทำให้เป็นค่าเริ่มต้นเมื่อบูต
พิมพ์ แทนที่
YOUR_API_KEY
ด้วยคีย์ API จริงของคุณ
echo 'ส่งออก GOOGLE_CLOUD_VISION_API_KEY=YOUR_API_KEY' >> /etc/profile
ตอนนี้รีบูต Pi เพื่อให้มีผล
sudo รีบูต
กลับเข้าสู่ระบบ ตรวจสอบเพื่อให้แน่ใจว่ากำลังโหลดคีย์ API
เสียงสะท้อน $GOOGLE_CLOUD_VISION_API_KEY
หากคีย์ API ของคุณถูกสะท้อนกลับ คุณก็ควรไปต่อ
ขั้นตอนที่ 8: ตั้งค่าโครงการ
มาสร้างไดเร็กทอรีโครงการกัน
mkdir google-vis
cd google-vis
ตอนนี้เรามาเริ่มต้นโปรเจ็กต์ Node ใหม่กัน
npm init
ปรับแต่งรายละเอียดแพ็คเกจได้ตามต้องการ ถ้าคุณขี้เกียจเหมือนผม ให้กด Enter จนกว่าคุณจะกลับมาที่พรอมต์คำสั่ง
มาเพิ่ม Node Libraries ที่จำเป็นกันเถอะ มันเป็นหนึ่ง ไลบรารี axios ซึ่งเปิดใช้งานการร้องขอเว็บแบบ async
npm axios
มาสร้างไดเร็กทอรีทรัพยากรและดาวน์โหลดภาพทดสอบที่น่ารักของเรา อา คิดถึงเฮปเบิร์น!
ตรวจสอบให้แน่ใจว่าคุณอยู่ใน
google-vis/resources
ไดเรกทอรีโครงการเมื่อดาวน์โหลดภาพ
ทรัพยากร mkdir
ขั้นตอนที่ 9:
สร้างไฟล์ใน
ไป-vis
ไดเรกทอรีที่เรียกว่า
app.js
nano app.js
จากนั้นวางโค้ดด้านล่างและบันทึกไฟล์โดยพิมพ์ CTRL+O และออกโดยใช้ CTRL+X
//
const const axios = ต้องการ ('axios'); const fs = ต้องการ ('fs');
const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY
ถ้า (!API_KEY) {
console.log('ไม่ได้ระบุคีย์ API') }
ฟังก์ชั่น base64_encode (ไฟล์) {
// อ่านข้อมูลไบนารี var bitmap = fs.readFileSync (ไฟล์); // แปลงข้อมูลไบนารีเป็นสตริงที่เข้ารหัส base64 ส่งคืนบัฟเฟอร์ใหม่ (บิตแมป).toString ('base64'); } var base64str = base64_encode('./resources/audrey.jpg');
const apiCall = `https://vision.googleapis.com/v1/images:annotate?key=${API_KEY}`;
const reqObj = {
คำขอ:[{ "image":{ "content": base64str }, "features":[{ "type":"LABEL_DETECTION", "maxResults":5 }, { "type":"FACE_DETECTION", "maxResults": 5 }, { "ประเภท": "IMAGE_PROPERTIES", "maxResults":5 }] }] }
axios.post (apiCall, reqObj).then ((ตอบกลับ) => {
console.log (ตอบกลับ); console.log(JSON.stringify(response.data.responses, undefined, 4)); }).catch((e) => { console.log (ตอบสนอง); });
รหัสนี้คว้าตัวแปรสภาพแวดล้อมคีย์ API และสร้างค่าคงที่ของโปรแกรมจากมัน
const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY
นี่คือวิธีที่เราหลีกเลี่ยงการฮาร์ดโค้ดคีย์ API
ขั้นตอนที่ 10:
มาเรียกใช้โปรแกรมกัน
โหนด app.js
หากทุกอย่างเป็นไปด้วยดีคุณควรได้ผลลัพธ์ที่คล้ายกันด้านล่าง
ข้อมูล: { ตอบกลับ:
ขั้นตอนที่ 11: และอีกมากมาย…
บทความนี้สั้น - การเริ่มต้นอย่างรวดเร็ว อย่างไรก็ตาม มีศักยภาพมากมายที่นี่ ตัวอย่างเช่น การส่งภาพของคุณเองโดยใช้ Raspberry Pi Camera
- ราสปิคาม
- pi-camera
โปรดอย่าลังเลที่จะถามคำถามเกี่ยวกับวิธีการใช้ผลลัพธ์
มีคำขอตรวจสอบคุณสมบัติอื่นๆ
Google Vision API -- คุณสมบัติอื่นๆ
อย่างไรก็ตาม ฉันจะจบบทความและดำเนินการต่อไปเกี่ยวกับระบบตรวจจับด้วยภาพของฉัน ทันทีที่ฉันหาการไล่ระดับสีสุ่ม
แนะนำ:
ตัวนับสมาชิก YouTube โดยใช้ E-Paper Display และ Raspberry Pi Zero W: 5 ขั้นตอน (พร้อมรูปภาพ)
ตัวนับสมาชิก YouTube โดยใช้ E-Paper Display และ Raspberry Pi Zero W: ในคำแนะนำนี้ ฉันจะแสดงวิธีสร้าง Youtube Subscriber Counter ของคุณเองโดยใช้จอแสดงผล e-paper และ Raspberry Pi Zero W เพื่อสอบถาม YouTube API และอัปเดตการแสดงผล การแสดงกระดาษอิเล็กทรอนิกส์เหมาะอย่างยิ่งสำหรับโครงการประเภทนี้เนื่องจากมี
TextPlayBulb: REST เปิดใช้งาน PlayBulb โดยใช้ Raspberry Pi 3, BLE และ Telegram: 3 ขั้นตอน
TextPlayBulb: REST ที่เปิดใช้งาน PlayBulb โดยใช้ Raspberry Pi 3, BLE และ Telegram: คำแนะนำนี้แสดงวิธีเชื่อมต่อกับหลอดไฟ LED Bluetooth ของ PlayBulb Color โดยใช้ Python, Raspberry Pi 3 และไลบรารี Bluetooth และขยายการควบคุมผ่าน REST API สำหรับสถานการณ์ IoT , และเพื่อเป็นรางวัล, โครงการยังแสดงวิธีการขยาย th
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
การรู้จำเสียงโดยใช้ Google Speech API และ Python: 4 ขั้นตอน
การรู้จำเสียงโดยใช้ Google Speech API และ Python: การรู้จำเสียงการรู้จำเสียงเป็นส่วนหนึ่งของการประมวลผลภาษาธรรมชาติซึ่งเป็นฟิลด์ย่อยของปัญญาประดิษฐ์ พูดง่ายๆ ก็คือ การรู้จำคำพูดเป็นความสามารถของซอฟต์แวร์คอมพิวเตอร์ในการระบุคำและวลีในภาษาพูด
ระบบการเข้าร่วมประชุมพร้อมการจัดเก็บข้อมูลบน Google Spreadsheet โดยใช้ RFID และ Arduino Ethernet Shield: 6 ขั้นตอน
ระบบการเข้าร่วมประชุมพร้อมการจัดเก็บข้อมูลบน Google สเปรดชีตโดยใช้ RFID และ Arduino Ethernet Shield: สวัสดีทุกคน เรามากับโครงการที่น่าตื่นเต้นมากและนั่นคือวิธีการส่งข้อมูล rfid ไปยัง Google สเปรดชีตโดยใช้ Arduino ในระยะสั้นเรากำลังจะสร้างระบบการเข้างานโดยใช้เครื่องอ่าน rfid ซึ่งจะบันทึกข้อมูลการเข้างานตามเวลาจริงไปที่ goog