ภาพ Street View

นักพัฒนาแอปในเขตเศรษฐกิจยุโรป (EEA)

ตัวอย่างชิ้นส่วนแผนที่ Street View

ชิ้นส่วนแผนที่ Street View คล้ายกับชิ้นส่วนแผนที่ 2 มิติ แต่มีภาพพาโนรามาที่ถ่ายในระดับถนน ด้วย Street View คุณสามารถสำรวจจุดสังเกตทั่วโลก ดูความมหัศจรรย์ทางธรรมชาติ และเยี่ยมชมด้านในของสถานที่ต่างๆ เช่น พิพิธภัณฑ์ สนามกีฬา ร้านอาหาร หรือธุรกิจขนาดย่อม ปลายทาง API นี้ช่วยให้คุณเข้าถึงสิ่งต่อไปนี้ได้

  • ชิ้นส่วนแผนที่ Google Maps Street View
  • ข้อมูลเมตาของ Street View
  • ภาพขนาดย่อของ Street View

คุณสามารถต่อชิ้นส่วนรูปภาพที่ถ่ายจากระดับถนนเข้าด้วยกันเพื่อสร้าง เอฟเฟกต์พาโนรามาในชีวิตจริง นอกจากนี้ คุณยังค้นหาได้สูงสุด 100 รหัสภาพพาโนรามาสำหรับชุดสถานที่ตั้ง (เช่น เส้นทาง) และรับข้อมูลเมตาเชิงลึกเพิ่มเติมเกี่ยวกับตำแหน่งกล้อง

โดยผู้ชมจะต้องต่อชิ้นส่วนแผนที่ Street View เข้าด้วยกัน เช่น โปรแกรมดูภาพพาโนรามาที่กำหนดเองของ Street View

เมื่อมีคีย์ API แล้ว คุณจะเข้าถึงภาพ Street View ได้โดยทำตามขั้นตอนต่อไปนี้

  1. รับโทเค็นเซสชัน อย่าลืม ตั้งค่า mapType เป็น streetview

  2. ใช้โทเค็นเซสชันเพื่อรับตัวระบุภาพพาโนรามา (panoId) ของสถานที่ทางภูมิศาสตร์อย่างน้อย 1 แห่ง

  3. ใช้ตัวระบุพาโนรามาจากคำตอบการค้นหา panoId เพื่อรับข้อมูลต่อไปนี้

    1. ข้อมูลเมตาของ Street View นอกจากนี้ คุณยังรับข้อมูลเมตาของสตรีทวิวได้โดยส่งชุดพิกัดและรัศมี

    2. ภาพขนาดย่อของ Street View

    3. ชิ้นส่วนแผนที่ Street View

วิธีการของ Street View

คุณเข้าถึงภาพและข้อมูลเมตาของ Street View ได้โดยเรียกใช้ 1 ใน 4 วิธีต่อไปนี้

วิธีการ คำอธิบาย
https://tile.googleapis.com/v1/streetview/tiles แสดงชิ้นส่วนแผนที่ Street View แต่ละรายการ คุณสามารถดึงข้อมูลไทล์ Street View ได้ที่ระดับการซูม 6 ระดับ ตั้งแต่ 512 พิกเซลไปจนถึง 13,312 พิกเซล
https://tile.googleapis.com/v1/streetview/panoIds ช่วยให้คุณค้นหาได้หลายสถานที่พร้อมกันสูงสุด 100 แห่ง แสดงรหัสภาพพาโนรามาสำหรับสถานที่ตั้งทั้งหมดที่มีภาพ
https://tile.googleapis.com/v1/streetview/thumbnail แสดงผลรูปภาพ JPEG ของภาพขนาดย่อของฉาก Street View ช่วยให้คุณระบุส่วนหัว ระดับเสียง ขนาด และมุมมองได้ ขนาดขั้นต่ำคือ 16x16 พิกเซล ขนาดสูงสุดคือ 250x600 พิกเซล
https://tile.googleapis.com/v1/streetview/metadata ให้ข้อมูลโดยละเอียดเกี่ยวกับพาโนรามาที่ระบุ รายละเอียดประกอบด้วยที่อยู่ที่เกี่ยวข้องและลิงก์ไปยังภาพพาโนรามาที่อยู่ติดกัน

คุณดูตัวระบุภาพพาโนรามาของสถานที่ตั้งทางภูมิศาสตร์อย่างน้อย 1 แห่งได้โดย ส่งพิกัด (lat, lng) ไปยังเมธอด panoIds ส่วนเนื้อหาของคำขอ คือออบเจ็กต์ JSON ที่มีlocationsอาร์เรย์และอาจมีradius ตามที่แสดงในตัวอย่างโค้ด JSON ต่อไปนี้

curl -X POST -d '{
  "locations": [
    {"lat": -33.883837, "lng": 151.209307},
    {"lat": -33.883700, "lng": 151.210307},
    {"lat": 0, "lng": 0}
  ],
  "radius": 50
}' \
-H 'Content-Type: application/json' \
"https://tile.googleapis.com/v1/streetview/panoIds?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY"
locations
อาร์เรย์ locations ต้องมีค่าพิกัดอย่างน้อย 1 ชุด แต่คุณสามารถใส่ค่าพิกัดเพิ่มเติมได้สูงสุด 100 ชุด
radius
ค่า radius (วัดเป็นเมตร) จะกำหนดรัศมีของวงกลม รอบตำแหน่งที่ระบุ ซึ่งใช้ในการค้นหาภาพพาโนรามา ค่าเริ่มต้น คือ 50 เมตร

การตอบกลับ PanoId

Map Tiles API จะพยายามค้นหาภาพพาโนรามาที่ใกล้กับแต่ละสถานที่มากที่สุด จากนั้นจะแสดงรหัสภาพพาโนรามาของสถานที่เหล่านั้น คำขอ panoIds ที่สำเร็จจะแสดงออบเจ็กต์ JSON ที่มีอาร์เรย์ panoIds อาร์เรย์ประกอบด้วยรายการรหัสพาโนรามาตามลำดับที่คุณขอ หาก Map Tiles API ไม่พบภาพพาโนรามาสำหรับสถานที่ที่คุณขอ ระบบจะแสดงผลสตริงว่าง ที่ตำแหน่งนั้นในอาร์เรย์ ดูตัวอย่างได้ที่โค้ด JSON ต่อไปนี้

{
  "panoIds": [
    "ACfH-n2HcBvRry_3oc9grw",
    "f5DJZatBAAAXHlooS2wKbw",
    ""
  ]
}

คุณใช้ panoIds เพื่อทำสิ่งต่อไปนี้ได้

ข้อมูลเมตาของ Street View

คำขอข้อมูลเมตาของ Street View จะดึงข้อมูลเกี่ยวกับพาโนรามา คำขอข้อมูลเมตาของ Street View คือคำขอ HTTPS GET คุณดึงข้อมูล เกี่ยวกับพาโนรามาได้ 2 วิธีดังนี้

  • หากส่ง pano_id Map Tiles API จะแสดงข้อมูลเมตาของ พาโนรามานั้น

  • แต่หากส่ง lat และ lng แล้ว Map Tiles API จะแสดงผลข้อมูลเมตา สำหรับภาพพาโนรามาที่ใกล้ที่สุดภายในรัศมีการค้นหาที่ระบุ

ส่งชุดพิกัดและรัศมี

curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&lat=lat&lng=lng&radius=meters"

เนื่องจากรหัสพาโนรามาเป็นแบบชั่วคราว เราจึงขอแนะนำให้คุณส่งชุดพิกัดและค่า radius ในคำขอข้อมูลเมตาของ Street View เริ่มต้น ดูตัวอย่างได้ที่ข้อมูลโค้ดต่อไปนี้

curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&lat=47.62066&lng=-122.34923&radius=50"

ส่ง panoId ของรูปภาพ Street View

curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&panoId=panoId"

การตอบกลับข้อมูลเมตา

โค้ด JSON ต่อไปนี้เป็นตัวอย่างการตอบกลับข้อมูลเมตาทั่วไป

{
 "panoId": "rZ9KeTyhA11i0VppYNzsSg",
 "lat": 37.420864219339165,
 "lng": -122.08446528377291,
 "imageHeight": 6656,
 "imageWidth": 13312,
 "tileHeight": 512,
 "tileWidth": 512,
 "heading": 94.35,
 "tilt": 88.39652,
 "roll": 1.7181772,
 "imageryType": "outdoor",
 "date": "2023-01",
 "copyright": "© 2023 Google",
 "reportProblemLink": "https://cbks0.googleapis.com/cbk?output=report&panoid=rZ9KeTyhA11i0VppYNzsSg&cb_client=api&cbp=1,0,,0,0&hl=en-US&gl=us",
 "addressComponents": [
  {
   "longName": "United States",
   "shortName": "United States",
   "types": [
    "country"
   ]
  },
  {
   "longName": "Mountain View, California",
   "shortName": "Mountain View, California",
   "types": [
    "locality"
   ]
  },
  {
   "longName": "Charleston Rd",
   "shortName": "Charleston Rd",
   "types": [
    "route"
   ]
  },
  {
   "longName": "1635",
   "shortName": "1635",
   "types": [
    "street_number"
   ]
  }
 ],
 "links": [
  {
   "panoId": "Yw4pqzA4FEq1qs-BwZSvSQ",
   "heading": 274.47998046875,
   "text": "Charleston Rd"
  },
  {
   "panoId": "1cODYwFRw1aZ45IignDIMw",
   "heading": 94.47999572753906,
   "text": "Charleston Rd"
  }
 ]
}

รายการต่อไปนี้มีคำจำกัดความของช่องในเนื้อหาการตอบกลับ

panoId
รหัสที่ไม่ซ้ำกันของภาพพาโนรามานี้ คุณไม่ควรใช้รหัสพาโนรามาที่ ใช้ได้นานกว่าเซสชันของผู้ใช้รายเดียว
lat, lng
พิกัด (ละติจูดและลองจิจูด) ของภาพพาโนรามา ค่าเหล่านี้อาจแตกต่างจากพิกัดที่คุณส่งในคำขอ เนื่องจากตำแหน่งจะสแนปกับพาโนรามาที่ใกล้ที่สุด
imageHeight, imageWidth
ขนาดของรูปภาพพาโนรามาที่ต่อกัน
tileHeight, tileWidth
ขนาดของไทล์พาโนรามาเดียว
heading
เข็มทิศที่มีทิศทาง หน่วยเป็นองศา ตามเข็มนาฬิกาจากทิศเหนือ ส่วนหัวจะแสดงภายในช่วง [0,360] โดย 0 หมายถึงทิศเหนือ
tilt
การเอียงของพาโนรามา วัดเป็นองศาจากขั้วโลกใต้ของ พาโนรามาไปยังขอบฟ้า ค่าที่แสดงจะอยู่ในช่วง [0, 180] ค่า 90 องศาแสดงว่าขอบฟ้าอยู่ในแนวเดียวกับเส้นศูนย์สูตรของภาพพาโนรามาอยู่แล้ว
roll
การหมุนตามเข็มนาฬิการอบแนวสายตาที่ใช้กับ ภาพพาโนรามาเพื่อปรับระดับขอบฟ้า ค่าที่แสดงจะอยู่ในช่วง [0, 360]
imageryType
ระบุประเภทของรูปภาพ ค่าที่ใช้ได้คือ indoor และ outdoor
date
วันที่ถ่ายภาพ รูปภาพบางรูปไม่มีข้อมูลวันที่ แต่เมื่อพร้อมใช้งาน ฟิลด์นี้จะมีปี (YYYY) และเดือน (MM) รวมกัน เช่น 2023-05 หรือ 2024
copyright
ข้อความลิขสิทธิ์ที่คุณต้องแสดงเป็นการระบุแหล่งที่มาพร้อมกับรูปภาพ Street View
reportProblemLink
ไฮเปอร์ลิงก์สำหรับผู้ใช้เพื่อใช้รายงานปัญหาเกี่ยวกับไทล์ Street View นี้ คุณต้องแสดงไฮเปอร์ลิงก์นี้ที่มุมขวาล่างของรูปภาพ และต้องมีข้อความลิงก์ที่ระบุว่า "รายงานปัญหาเกี่ยวกับรูปภาพนี้"
addressComponent
รหัสพิกัดภูมิศาสตร์ที่มีโครงสร้าง ซึ่งมีรายละเอียดเกี่ยวกับที่อยู่ของภาพพาโนรามา ดูข้อมูลเพิ่มเติมได้ที่ คำขอและการตอบกลับการแปลงพิกัดภูมิศาสตร์ ในเอกสารประกอบของ Geocoding API
links
รายการรหัสพาโนรามาที่ลิงก์กับรหัสนี้ รวมถึงมีส่วนหัวที่พบลิงก์ด้วย เช่น หากส่วนหัวคือ 180° แสดงว่าพาโนรามาที่ลิงก์อยู่ทางใต้ของพาโนรามาปัจจุบัน โปรดทราบว่าเนื่องจากลักษณะชั่วคราวของรหัสพาโนรามา คุณจึงไม่ควรใช้รหัสเหล่านี้สำหรับเซสชันของผู้ใช้มากกว่า 1 เซสชัน

ภาพขนาดย่อของ Street View

คุณขอภาพ Street View ในรูปแบบ thumbnail ได้ ภาพขนาดย่อคือ รูปภาพแบบไม่เรียงต่อกันที่มีขนาด ส่วนหัว ระดับ และมุมมองที่ผู้ใช้กำหนด รูปภาพขนาดย่อมีความละเอียดต่ำกว่าไทล์ และมีขนาดไฟล์เล็กกว่า คุณส่งคำขอภาพขนาดย่อได้โดยส่งคำขอ GET ไปยังปลายทาง thumbnail ดังที่แสดงในต้นแบบโค้ดต่อไปนี้

curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&panoId=panoId&height=FROM_16_TO_250&width=FROM_16_TO_600&pitch=FROM-90_TO_90&yaw=FROM-360_TO_360&fov=FROM_30_TO_120"

ลองดูตัวอย่างโค้ดต่อไปนี้ ซึ่งจะดาวน์โหลดภาพขนาดย่อของภาพ Street View ที่ถ่ายในวิสเลอร์ ประเทศแคนาดา

curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&panoId=Zzl28rqGJgaL2IdkUleP8A&height=200&width=200&pitch=0&yaw=250&fov=80" --output /tmp/example_thumbnail.png

ภาพขนาดย่อของ Street View ของวิสเลอร์ แคนาดา

พารามิเตอร์ที่จำเป็น

panoId
รหัสที่ไม่ซ้ำกันของภาพปกที่คุณต้องการ คุณสามารถรับค่ารหัสพาโนรามา จากpanoIds Endpoint หรือจาก metadata Endpoint ซึ่งทั้ง 2 Endpoint จะยอมรับพิกัดทางภูมิศาสตร์ และแสดงผล panoId ที่เหมาะสม
session
โทเค็นของเซสชันที่ถูกต้อง
key
คีย์ API ของคุณ

พารามิเตอร์ที่ไม่บังคับ

height
ระบุความสูงของภาพขนาดย่อเป็นพิกเซล โดยมีตั้งแต่ 16 พิกเซลถึง 250 พิกเซล หากไม่ได้ระบุความสูงไว้ ค่าเริ่มต้นจะเป็นความสูงสูงสุดที่อนุญาตคือ 250 พิกเซล หากคุณระบุค่าที่อยู่นอกช่วง ภาพปกจะสแนปไปยังค่าที่ถูกต้องที่ใกล้ที่สุด
width
ระบุความกว้างของภาพขนาดย่อเป็นพิกเซล โดยมีตั้งแต่ 16 พิกเซลถึง 600 พิกเซล หากไม่ได้ระบุความกว้าง ค่าเริ่มต้นจะเป็นค่าสูงสุดที่อนุญาต ซึ่งก็คือ 600 พิกเซล หากคุณระบุค่าที่อยู่นอกช่วง ภาพปกจะสแนปไปยังค่าที่ถูกต้องที่ใกล้ที่สุด
pitch
กำหนดมุมของกล้องตามแกนแนวตั้ง ค่าที่ใช้ได้อยู่ในช่วง -90 ถึง 90 (รวม) ค่าเริ่มต้นคือ 0
yaw
ระบุทิศทางของกล้องตามแกนนอน ค่าที่ใช้ได้ อยู่ในช่วง -360 ถึง 360 (รวมค่าแรกและค่าสุดท้าย) ค่าเริ่มต้นคือ 0
fov
ระบุมุมมองแนวนอนเป็นองศา โดยมีค่าสูงสุด เท่ากับ 120 เมื่อต้องจัดการกับวิวพอร์ตที่มีขนาดคงที่ เช่นเดียวกับภาพ Street View ที่มีขนาดที่กำหนดไว้ ฟิลด์ของมุมมองจะแสดงถึงการซูม โดยค่าที่เล็กลงจะระบุระดับการซูมที่สูงขึ้น ค่าเริ่มต้นคือ 90

ชิ้นส่วนแผนที่ของภาพ Street View

เมื่อมี panoId แล้ว คุณจะขอชิ้นส่วนภาพ Street View ได้ คำขอไทล์ เป็นคำขอ HTTPS GET ลองดูตัวอย่างต่อไปนี้

curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&panoId=panoId"

ในตัวอย่างโค้ดนี้ z คือระดับการซูม และ x กับ y คือ พิกัดไทล์ ของไทล์ Street View ที่คุณต้องการ ระดับการซูมในภาพพาโนรามาของ Street View ต้อง อยู่ในช่วง [0,5] โดยที่ 0 หมายถึงมุมมองที่กว้างที่สุด

ระดับการซูม ขอบเขตการมองเห็นโดยประมาณ
0 360°
1 180°
2 90°
3 45°
4 22.5°
5 11.25°

การตอบกลับของชิ้นส่วนแผนที่ Street View

คำขอไทล์ Street View ที่สำเร็จจะแสดงรูปภาพในรูปแบบและขนาด ที่คุณระบุในการตอบกลับ createSession

ผลลัพธ์ของคำขอไทล์ที่สำเร็จ

ที่ระดับการซูม 0 ระบบจะปรับขนาดพาโนรามาทั้งหมดเป็นไทล์ที่มีขนาด tileWidth x tileHeight เนื่องจากพาโนรามามีขนาดใหญ่กว่าในมิติ x ไทล์จึงมีพื้นที่ว่างในมิติ y

ระดับการซูม 0

ที่ระดับการซูม 5 ระบบจะใช้ภาพพาโนรามาขนาดเต็มและแบ่งออกเป็นไทล์

คุณต้องแสดงข้อมูลลิขสิทธิ์พร้อมกับพาโนรามา Street View ทุกภาพ สตริงที่จะแสดงอาจแตกต่างกันไปในแต่ละพาโนรามา หากต้องการดูข้อมูลลิขสิทธิ์ คุณต้องขอข้อมูลเมตาของ Street View แล้วจึงจะ ดูฟิลด์ copyright ในการตอบกลับได้ ดูข้อมูลเพิ่มเติมได้ที่ การระบุแหล่งที่มาของข้อมูล