Mengirim kueri pencarian ke Bing Visual Search API

Peringatan

Bing Search API berpindah dari Cognitive Services ke Bing Search Services. Mulai 30 Oktober 2020, instans baru Bing Search apa pun harus diprovisikan dengan mengikuti proses yang didokumentasikan di sini. Bing Search API yang diprovisikan menggunakan Cognitive Services akan didukung selama tiga tahun ke depan atau hingga akhir Perjanjian Enterprise Anda, mana pun yang terjadi terlebih dahulu. Untuk petunjuk tentang migrasi, lihat Bing Search Services.

Artikel ini menjelaskan parameter dan atribut permintaan yang dikirim ke Bing Visual Search API, serta objek respons.

Anda bisa mendapatkan wawasan tentang gambar dalam tiga cara:

  • Menggunakan token wawasan yang Anda dapatkan dari gambar dalam panggilan sebelumnya ke salah satu titik akhir Bing Image Search API.
  • Mengirim URL gambar.
  • Mengunggah gambar (dalam format biner).

Permintaan Bing Visual Search

Jika Anda mengirim token gambar atau URL ke Visual Search, cuplikan berikut menunjukkan objek JSON yang harus Anda sertakan dalam isi POST:

{
    "imageInfo" : {
        "url" : "",
        "imageInsightsToken" : "",
        "cropArea" : {
            "top" : 0.1,
            "left" : 0.5,
            "right" : 0.9,
            "bottom" : 0.9
        }
    },
    "knowledgeRequest" : {
      "filters" : {
        "site" : ""
      }
    }
}

Objek imageInfo harus menyertakan bidang url atau imageInsightsToken, tetapi tidak keduanya. Atur bidang url ke URL gambar yang dapat diakses Internet. Ukuran gambar maksimum yang didukung adalah 1 MB.

imageInsightsToken harus diatur ke token wawasan. Untuk mendapatkan token wawasan, panggil Bing Image API. Respons berisi daftar objek Image. Setiap objek Image berisi bidang imageInsightsToken, yang berisi token.

Bidang cropArea bersifat opsional. Area pemotongan menentukan sudut kiri atas dan sudut kanan bawah dari wilayah yang diminati. Tentukan nilai dalam rentang 0,0 hingga 1,0. Nilai adalah persentase dari lebar atau tinggi keseluruhan. Misalnya, contoh di atas menandai bagian kanan gambar sebagai wilayah yang diminati. Sertakan jika Anda ingin membatasi permintaan wawasan ke wilayah yang diminati.

Objek filters berisi filter situs (lihat bidang site) yang dapat Anda gunakan untuk membatasi gambar serupa dan hasil produk serupa ke domain tertentu. Misalnya, jika gambar adalah bagian Surface Book, Anda dapat mengatur site ke www.microsoft.com.

Jika Anda ingin mendapatkan wawasan tentang salinan gambar lokal, unggah gambar sebagai data biner.

Untuk detail tentang menyertakan opsi ini di isi POST, lihat Jenis formulir konten.

Mencari titik akhir

Titik akhir Visual Search adalah: https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch.

Permintaan hanya harus dikirim sebagai permintaan HTTP POST.

Parameter kueri

Berikut adalah parameter kueri yang ditentukan permintaan Anda. Minimal, Anda harus menyertakan parameter kueri mkt:

Nama Nilai Jenis Diperlukan
cc Kode negara dua karakter yang mewakili dari mana hasilnya berasal.

Jika Anda mengatur parameter ini, Anda juga harus menentukan header Accept-Language. Bing menggunakan bahasa pertama yang didukung yang ditemukannya dari daftar bahasa, dan menggabungkan bahasa dengan kode negara yang Anda tentukan untuk menentukan pasar untuk menampilkan hasilnya. Jika daftar bahasa tidak menyertakan bahasa yang didukung, Bing menemukan bahasa dan pasar terdekat yang mendukung permintaan tersebut. Atau mungkin menggunakan pasar agregat atau default untuk hasil, bukan yang ditentukan.

Anda harus menggunakan parameter kueri ini dan parameter kueri Accept-Language hanya jika Anda menentukan beberapa bahasa; jika tidak, Anda harus menggunakan parameter kueri mkt dan setLang.

Parameter ini dan parameter kueri mkt saling eksklusif—jangan tentukan keduanya.
String Tidak
mkt Pasar tempat hasilnya berasal.

CATATAN: Anda harus selalu menentukan pasar, jika diketahui. Menentukan pasar membantu Bing merutekan permintaan dan menampilkan respons yang sesuai dan optimal.

Parameter ini dan parameter kueri cc saling eksklusif—jangan tentukan keduanya.
String Ya
safeSearch Filter untuk konten dewasa. Berikut adalah kemungkinan nilai filter tidak sensitif huruf besar/kecil.
  • Off—Menampilkan halaman web dengan teks atau gambar dewasa.

  • Moderate—Menampilkan halaman web dengan teks dewasa, tetapi tanpa gambar dewasa.

  • Strict—Tidak menampilkan halaman web dengan teks atau gambar dewasa.

Defaultnya adalah Moderate.

CATATAN: Jika permintaan berasal dari pasar yang diwajibkan oleh kebijakan dewasa Bing bahwa safeSearch harus diatur ke Strict, Bing mengabaikan nilai safeSearch dan menggunakan Strict.

CATATAN: Jika Anda menggunakan operator kueri site:, ada kemungkinan respons mungkin berisi konten dewasa terlepas dari apa penetapan parameter kueri safeSearch. Gunakan site: hanya jika Anda mengetahui konten di situs dan skenario Anda mendukung kemungkinan konten dewasa.
String Tidak
setLang Bahasa yang digunakan untuk string antarmuka pengguna. Tentukan bahasa menggunakan kode bahasa dua huruf ISO 639-1. Misalnya, kode bahasa untuk bahasa Inggris adalah EN. Defaultnya adalah EN (Inggris).

Meskipun opsional, Anda harus selalu menentukan bahasa. Biasanya, Anda mengatur setLang ke bahasa yang sama dengan yang ditentukan oleh mkt kecuali pengguna ingin string antarmuka pengguna ditampilkan dalam bahasa yang berbeda.

Parameter ini dan header Accept-Language saling eksklusif—jangan tentukan keduanya.

String antarmuka pengguna adalah string yang digunakan sebagai label di antarmuka pengguna. Ada beberapa string antarmuka pengguna di objek respons JSON. Selain itu, setiap tautan ke properti Bing.com dalam objek respons menerapkan bahasa yang ditentukan.
String Tidak

Header

Berikut ini adalah header yang harus ditentukan oleh permintaan Anda. Header Content-Type dan Ocp-Apim-Subscription-Key adalah satu-satunya header yang diperlukan, tetapi Anda juga harus menyertakan User-Agent, X-MSEdge-ClientID, X-MSEdge-ClientIP, dan X-Search-Location.

Header Deskripsi
Accept-Language Header permintaan opsional.

Daftar bahasa yang dibatasi koma untuk digunakan untuk string antarmuka pengguna. Daftar ini dalam urutan preferensi yang menurun. Untuk mengetahui informasi selengkapnya, termasuk format yang diharapkan, lihat RFC2616.

Header ini dan parameter kueri setLang saling eksklusif—jangan tentukan keduanya.

Jika Anda mengatur header ini, Anda juga harus menentukan parameter kueri cc. Untuk menentukan pasar guna menampilkan hasil, Bing menggunakan bahasa pertama yang didukung yang ditemukannya dari daftar dan menggabungkannya dengan nilai parameter cc. Jika daftar tidak menyertakan bahasa yang didukung, Bing menemukan bahasa dan pasar terdekat yang mendukung permintaan atau menggunakan pasar agregat atau default untuk hasilnya. Untuk menentukan pasar yang digunakan Bing, lihat header BingAPIs-Market.

Gunakan header ini dan parameter kueri cc hanya jika Anda menentukan beberapa bahasa. Jika tidak, gunakan parameter kueri mkt dan setLang.

String antarmuka pengguna adalah string yang digunakan sebagai label di antarmuka pengguna. Ada beberapa string antarmuka pengguna di objek respons JSON. Setiap tautan ke properti Bing.com dalam objek respons menerapkan bahasa yang ditentukan.
Content-Type
BingAPIs-Market Header respons.

Pasar yang digunakan oleh permintaan. Bentuknya adalah <languageCode>-<countryCode>. Misalnya, en-US.
BingAPIs-TraceId Header respons.

ID entri log yang berisi detail permintaan. Saat terjadi kesalahan, ambil ID ini. Jika Anda tidak dapat menentukan dan mengatasi masalah tersebut, sertakan ID ini bersama dengan informasi lain yang Anda berikan kepada tim Dukungan.
Ocp-Apim-Subscription-Key Header permintaan yang diperlukan.

Kunci langganan yang Anda terima saat mendaftar untuk layanan ini di Cognitive Services.
Pragma
User-Agent Header permintaan opsional.

Agen pengguna yang berasal dari permintaan. Bing menggunakan agen pengguna untuk memberikan pengalaman yang dioptimalkan kepada pengguna seluler. Meskipun opsional, Anda dianjurkan untuk selalu menentukan header ini.

User-agent harus berupa string yang sama dengan yang dikirim oleh browser yang umum digunakan. Untuk mengetahui informasi tentang user-agent, lihat RFC 2616.

Berikut adalah contoh string user-agent.
  • Ponsel Windows—Mozilla/5.0 (kompatibel; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 822)

  • Android—Mozilla/5.0 (Linux; U; Android 2.3.5; en-us; SCH-I500 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML; seperti Gecko) Versi/4.0 Mobile Safari/533.1

  • iPhone—Mozilla/5.0 (iPhone; CPU iPhone OS 6_1 seperti Mac OS X) AppleWebKit/536.26 (KHTML; seperti Gecko) Mobile/10B142 iPhone4;1 BingWeb/3.03.1428.20120423

  • PC—Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; rv:11.0) seperti Gecko

  • iPad—Mozilla/5.0 (iPad; CPU OS 7_0 like Mac OS X) AppleWebKit/537.51.1 (KHTML, seperti Gecko) Versi/7.0 Mobile/11A465 Safari/9537.53
X-MSEdge-ClientID Permintaan dan header respons opsional.

Bing menggunakan header ini untuk memberi perilaku yang konsisten kepada pengguna di seluruh panggilan Bing API. Bing sering kali menerbangkan fitur dan peningkatan baru, dan menggunakan ID klien sebagai kunci untuk menetapkan lalu lintas pada penerbangan yang berbeda. Jika Anda tidak menggunakan ID klien yang sama untuk pengguna di beberapa permintaan, Bing dapat menetapkan pengguna ke beberapa penerbangan yang bertentangan. Ditetapkan ke beberapa penerbangan yang bertentangan dapat menyebabkan pengalaman pengguna yang tidak konsisten. Misalnya, jika permintaan kedua memiliki penetapan penerbangan yang berbeda dengan yang pertama, pengalaman tersebut mungkin tidak diharapkan. Selain itu, Bing dapat menggunakan ID klien untuk menyesuaikan hasil web dengan riwayat pencarian ID klien tersebut, memberikan pengalaman yang lebih kaya bagi pengguna.

Bing juga menggunakan header ini untuk membantu meningkatkan peringkat hasil dengan menganalisis aktivitas yang dibuat oleh ID klien. Peningkatan relevansi membantu terkait kualitas hasil yang lebih baik yang disampaikan oleh Bing API dan pada gilirannya memungkinkan rasio klik-tayang yang lebih tinggi untuk konsumen API.

PENTING: Meskipun opsional, Anda harus menganggap header ini diperlukan. Mempertahankan ID klien di beberapa permintaan untuk kombinasi pengguna akhir dan perangkat yang sama memungkinkan 1) konsumen API menerima pengalaman pengguna yang konsisten, dan 2) rasio klik-tayang yang lebih tinggi melalui kualitas hasil yang lebih baik dari Bing API.

Berikut adalah aturan dasar penggunaan yang berlaku untuk header ini.
  • Setiap pengguna yang menggunakan aplikasi Anda pada perangkat harus memiliki ID klien buatan Bing yang unik.

    Jika Anda tidak menyertakan header ini dalam permintaan, Bing membuat ID dan menampilkannya di header respons X-MSEdge-ClientID. Satu-satunya waktu yang TIDAK diizinkan untuk menyertakan header ini dalam permintaan adalah pertama kalinya pengguna menggunakan aplikasi Anda di perangkat tersebut.

  • PERHATIAN: Anda harus memastikan bahwa ID Klien ini tidak dapat ditautkan ke informasi akun pengguna terautentikasi.
  • Gunakan ID klien untuk setiap permintaan Bing API yang dibuat aplikasi Anda untuk pengguna ini di perangkat.

  • Pertahankan ID klien. Untuk mempertahankan ID di aplikasi browser, gunakan cookie HTTP persisten untuk memastikan ID digunakan di semua sesi. Jangan gunakan cookie sesi. Untuk aplikasi lain seperti aplikasi seluler, gunakan penyimpanan persisten perangkat untuk mempertahankan ID.

    Lain kali pengguna menggunakan aplikasi Anda di perangkat tersebut, dapatkan ID klien yang Anda pertahankan.

CATATAN: Respons Bing mungkin atau mungkin tidak menyertakan header ini. Jika respons menyertakan header ini, tangkap ID klien dan gunakan untuk semua permintaan Bing berikutnya untuk pengguna di perangkat tersebut.

CATATAN: Jika Anda menyertakan X-MSEdge-ClientID, Anda tidak boleh menyertakan cookie dalam permintaan.
X-MSEdge-ClientIP Header permintaan opsional.

Alamat IPv4 atau IPv6 perangkat klien. Alamat IP digunakan untuk menemukan lokasi pengguna. Bing menggunakan informasi lokasi untuk menentukan perilaku pencarian yang aman.

CATATAN: Meskipun opsional, Anda dianjurkan untuk selalu menentukan header ini dan header X-Search-Location.

Jangan mengaburkan alamat (misalnya, dengan mengubah oktet terakhir menjadi 0). Mengaburkan alamat mengakibatkan lokasi tidak berada di dekat lokasi aktual perangkat, yang dapat mengakibatkan Bing memberikan hasil yang salah.
X-Search-Location Header permintaan opsional.

Daftar pasangan kunci/nilai yang dibatasi titik koma yang menjelaskan lokasi geografis klien. Bing menggunakan informasi lokasi untuk menentukan perilaku pencarian yang aman dan menampilkan konten lokal yang relevan. Tentukan pasangan kunci/nilai sebagai <key>:<value>. Berikut adalah kunci yang Anda gunakan untuk menentukan lokasi pengguna.

  • lat—Diperlukan. Garis lintang lokasi klien, dalam derajat. Garis lintang harus lebih besar dari atau sama dengan -90.0 dan kurang dari atau sama dengan +90.0. Nilai negatif menunjukkan garis lintang selatan dan nilai positif menunjukkan garis lintang utara.

  • long—Diperlukan. Bujur lokasi klien, dalam derajat. Bujur harus lebih besar dari atau sama dengan -180.0 dan kurang dari atau sama dengan +180.0. Nilai negatif menunjukkan bujur barat dan nilai positif menunjukkan bujur timur.

  • re—Diperlukan. Radius, dalam meter, yang menentukan akurasi horizontal koordinat. Berikan nilai yang ditampilkan oleh layanan lokasi perangkat. Nilai umum mungkin 22 m untuk GPS/Wi-Fi, 380 m untuk triangulasi menara sel, dan 18.000 m untuk pencarian IP terbalik.

  • ts—Opsional. Tanda waktu UTC UNIX saat klien berada di lokasi tersebut. (Tanda waktu UNIX adalah jumlah detik sejak 1 Januari 1970.)

  • head—Opsional. Judul relatif atau arah perjalanan klien. Tentukan arah perjalanan sebagai derajat dari 0 hingga 360, menghitung searah jarum jam relatif terhadap utara sejati. Tentukan kunci ini hanya jika kunci sp bukan nol.

  • sp—Opsional. Kecepatan horizontal (kecepatan), dalam meter per detik, perangkat klien bepergian.

  • alt—Opsional. Ketinggian perangkat klien, dalam meter.

  • are—Opsional. Radius, dalam meter, yang menentukan akurasi vertikal koordinat. Tentukan kunci ini hanya jika Anda menentukan kunci alt.

CATATAN: Meskipun banyak kunci bersifat opsional, semakin banyak informasi yang Anda berikan, semakin akurat hasil lokasinya.

CATATAN: Meskipun opsional, Anda dianjurkan untuk selalu menentukan lokasi geografis pengguna. Menyediakan lokasi sangat penting jika alamat IP klien tidak secara akurat mencerminkan lokasi fisik pengguna (misalnya, jika klien menggunakan VPN). Untuk hasil yang optimal, Anda harus menyertakan header ini dan header X-MSEdge-ClientIP, tetapi minimal, Anda harus menyertakan header ini.

Catatan

Ingat bahwa penggunaan dan persyaratan tampilan Bing Search API memerlukan kepatuhan terhadap semua hukum yang berlaku, termasuk mengenai penggunaan header ini. Misalnya, di wilayah hukum tertentu, seperti Eropa, ada persyaratan untuk mendapatkan persetujuan pengguna sebelum menempatkan perangkat pelacakan tertentu pada perangkat pengguna.

Jenis formulir konten

Setiap permintaan harus menyertakan header Content-Type. Header harus diatur ke: multipart/form-data; boundary=\<boundary string\>, yang mana <boundary string> merupakan string buram yang unik yang mengidentifikasi batas data formulir. Contohnya:boundary=boundary_1234-abcd

Jika Anda mengirim token gambar atau URL Visual Search, cuplikan berikut menunjukkan data formulir yang harus Anda sertakan dalam isi POST. Data formulir harus menyertakan header Content-Disposition dan Anda harus mengatur parameter name ke "knowledgeRequest". Untuk detail tentang objek imageInfo, lihat permintaan.

--boundary_1234-abcd
Content-Disposition: form-data; name="knowledgeRequest"

{
    "imageInfo" : {
        "url" : "https://contoso.com/2018/05/fashion/red.jpg"
    }
}

--boundary_1234-abcd--

Anda dapat secara opsional mengatur atribut enableEntityData di header ke true untuk informasi terperinci tentang entitas utama dalam gambar yang Anda unggah, termasuk tautan ke web dan informasi atribusi. Bidang ini false secara default.

--boundary_1234-abcd
Content-Disposition: form-data; name="knowledgeRequest"

{
  "imageInfo" : {
      "url" : "https://contoso.com/2018/05/fashion/red.jpg"
  },
  "knowledgeRequest" : {
    "invokedSkillsRequestData" : {
        "enableEntityData" : "true"
    }
  }
}

--boundary_1234-abcd--

Jika Anda mengunggah gambar lokal, cuplikan berikut menunjukkan data formulir yang harus Anda sertakan dalam isi POST. Data formulir harus menyertakan header Content-Disposition. Parameter name harus diatur ke "image" dan parameter filename dapat diatur ke string apa pun. Header Content-Type dapat diatur ke jenis mime gambar yang umum digunakan. Isi formulir adalah data biner gambar. Ukuran gambar maksimum yang dapat Anda unggah adalah 1 MB. Lebar atau tinggi terbesar harus 1.500 piksel atau kurang.

--boundary_1234-abcd
Content-Disposition: form-data; name="image"; filename="myimagefile.jpg"
Content-Type: image/jpeg

ÿØÿà JFIF ÖÆ68g-¤CWŸþ29ÌÄøÖ‘º«™æ±èuZiÀ)"óÓß°Î= ØJ9á+*G¦...

--boundary_1234-abcd--

Cuplikan berikut menunjukkan cara menentukan wilayah minat dari gambar yang diunggah:

--boundary_1234-abcd
Content-Disposition: form-data; name="knowledgeRequest"

{
    "imageInfo" : {
        "cropArea" : {
            "top" : 0.2,
            "left" : 0.3,
            "bottom" : 0.7,
            "right" : 0.6
        }
    }
}

--boundary_1234-abcd
Content-Disposition: form-data; name="image"; filename="image"
Content-Type: image/jpeg


ÿØÿà JFIF ÖÆ68g-¤CWŸþ29ÌÄøÖ‘º«™æ±èuZiÀ)"óÓß°Î= ØJ9á+*G¦...

--boundary_1234-abcd--

Contoh permintaan

Cuplikan berikut menunjukkan permintaan wawasan gambar lengkap yang melewati token gambar dan wilayah minat. Anda mendapatkan token wawasan dari panggilan sebelumnya ke /images/search:

POST https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch?mkt=en-us HTTP/1.1  
Content-Type: multipart/form-data; boundary=boundary_1234-abcd
Ocp-Apim-Subscription-Key: 123456789ABCDE  
X-MSEdge-ClientIP: 999.999.999.999  
X-Search-Location: lat:47.60357;long:-122.3295;re:100  
X-MSEdge-ClientID: <blobFromPriorResponseGoesHere>  
Host: api.cognitive.microsoft.com 

--boundary_1234-abcd
Content-Disposition: form-data; name="knowledgeRequest"

{
    "imageInfo" : {
        "imageInsightsToken" : "mid_D6426898706EC7..."
        "cropArea" : {
            "top" : 0.1,
            "left" : 0.2,
            "bottom" : 0.7,
            "right" : 0.5
        }
    }
}

--boundary_1234-abcd--

Respons Bing Visual Search

Catatan

Karena format dan parameter URL dapat berubah tanpa pemberitahuan, gunakan semua URL apa adanya. Anda tidak boleh mengambil dependensi pada format atau parameter URL kecuali jika dicatat.

Jika ada wawasan yang tersedia untuk gambar, respons berisi satu atau beberapa tags yang berisi wawasan. Bidang image berisi token wawasan untuk gambar input:

{
  "_type" : "ImageKnowledge",
  "tags" : [
    {...},
    {...},
    {...},
    {...},
    {...}
  ],
  "image" : {
    "imageInsightsToken" : "bcid_AF8C9CA409421B..."
  }
}

Bidang tags berisi nama tampilan dan daftar tindakan (wawasan). Salah satu tag berisi bidang displayName yang diatur ke string kosong. Tag ini berisi wawasan default seperti halaman web yang menyertakan gambar, gambar yang serupa secara visual, dan sumber belanja untuk item yang ditemukan dalam gambar. Karena seluruh gambar menarik, tag wawasan default tidak menyertakan kotak batas untuk wilayah minat:

{
  "_type" : "ImageKnowledge",
  "tags" : [
    {
      "displayName" : "",
      "actions" : [
        {...},
        {...},
        {...},
        {...}
      ]
    },
    {...},
    {...},
    {...},
    {...}
  ],
  "image" : {
    "imageInsightsToken" : "bcid_AF8C9CA409421B..."
  }
}

Untuk daftar wawasan default, lihat Tag wawasan default.

Tag yang tersisa berisi wawasan lain yang mungkin menarik bagi pengguna. Misalnya, jika gambar berisi teks, salah satu tag dapat menyertakan wawasan TextResults, yang berisi teks yang dikenali. Atau, jika Bing mengenali entitas (yaitu, orang yang terkenal/populer secara budaya, tempat, atau berbagai hal) dalam gambar, salah satu tag dapat mengidentifikasi entitas. Visual Search juga menampilkan sekumpulan istilah (tag) yang beragam yang berasal dari gambar input. Tag ini memungkinkan pengguna mengeksplorasi konsep yang ditemukan dalam gambar. Misalnya, jika gambar input adalah atlet terkenal, salah satu tag mungkin Olahraga, yang berisi tautan ke gambar olahraga.

Setiap tag menyertakan nama tampilan yang dapat Anda gunakan untuk mengategorikan wawasan, kotak batas yang mengidentifikasi wilayah minat tempat wawasan diterapkan, wawasan itu sendiri, dan gambar mini untuk gambar. Misalnya, jika gambar adalah seseorang yang mengenakan jersey olahraga, salah satu tag mungkin menyertakan kotak batas yang terikat jersey dan menyertakan wawasan VisualSearch dan ProductVisualSearch. Dan tag lain mungkin menyertakan wawasan ImageResults yang berisi URL untuk permintaan API /images/search untuk mendapatkan gambar yang terkait berdasarkan topik atau URL pencarian Bing.com yang membawa pengguna ke hasil pencarian gambar Bing.com.

Semua tag selain tag wawasan default menyertakan kotak batas yang mengidentifikasi wilayah minat dalam gambar. Misalnya, jika gambar menyertakan beberapa orang yang dikenali, tag dapat menyertakan kotak batas untuk setiap orang, atau jika gambar berisi item pakaian yang dikenali, tag dapat menyertakan kotak batas untuk setiap item pakaian yang dikenali. Anda dapat menggunakan kotak batas untuk membuat titik panas di atas gambar yang saat diklik, memberikan detail tentang konten di wilayah gambar tersebut. Anda tidak boleh menyertakan titik panas dalam gambar untuk kotak batas yang mengidentifikasi seluruh gambar.

Pengenalan teks

Jika gambar berisi teks yang dikenali layanan, salah satu tag akan berisi wawasan TextResults (tindakan). displayName wawasan berisi teks yang dikenali:

    {
        "image" : {
            "thumbnailUrl" : "https:\/\/tse3.mm.bing.net\/th?q=%23%23Text..."
        },
        "displayName" : "##TextRecognition",
        "boundingBox" : {
            "queryRectangle" : {
                "topLeft" : {"x" : 0, "y" : 0},
                "topRight" : {"x" : 1, "y" : 0},
                "bottomRight" : {"x" : 1, "y" : 1},
                "bottomLeft" : {"x" : 0, "y" : 1}
            },
            "displayRectangle" : {
                "topLeft" : {"x" : 0, "y" : 0},
                "topRight" : {"x" : 1, "y" : 0},
                "bottomRight" : {"x" : 1, "y" : 1},
                "bottomLeft" : {"x" : 0, "y" : 1}
            }
        },
        "actions" : [{
            "displayName" : "WALK BIKE ACROSS BRIDGE",
            "actionType" : "TextResults"
        }],
        "sources" : ["OCR"]
    }

Karena bidang displayName tag berisi ##TextRecognition, jangan gunakan sebagai judul kategori di UX. Itu berlaku untuk nama tampilan apa pun yang dimulai dengan ##. Sebagai gantinya, gunakan nama tampilan tindakan.

Pengenalan teks juga dapat mengenali informasi kontak pada kartu nama, seperti nomor telepon dan alamat email. Kotak batas mengidentifikasi lokasi informasi kontak pada kartu.

    {
      "image" : {
        "thumbnailUrl" : "https:\/\/tse3.mm.bing.net\/th?q=%23%23TextRecognition..."
      },
      "displayName" : "##TextRecognition",
      "boundingBox" : {
        "queryRectangle" : {
          "topLeft" : {"x" : 0.635, "y" : 0},
          "topRight" : {"x" : 0.77, "y" : 0},
          "bottomRight" : {"x" : 0.77, "y" : 0.4873333},
          "bottomLeft" : {"x" : 0.635, "y" : 0.4873333}
        },
        "displayRectangle" : {
          "topLeft" : {"x" : 0.635, "y" : 0},
          "topRight" : {"x" : 0.77, "y" : 0},
          "bottomRight" : {"x" : 0.77, "y" : 0.4873333},
          "bottomLeft" : {"x" : 0.635, "y" : 0.4873333}
        }
      },
      "actions" : [
        {
          "url" : "tel:888%20555%201212",
          "actionType" : "Uri"
        }
      ],
      "sources" : ["OCR"]
    },
    {
      "image" : {
        "thumbnailUrl" : "https:\/\/tse3.mm.bing.net\/th?q=%23%23TextRecognition..."
      },
      "displayName" : "##TextRecognition",
      "boundingBox" : {
        "queryRectangle" : {
          "topLeft" : {"x" : 0.63, "y" : 0},
          "topRight" : {"x" : 0.866, "y" : 0},
          "bottomRight" : {"x" : 0.866, "y" : 0.5553334},
          "bottomLeft" : {"x" : 0.63, "y" : 0.5553334}
        },
        "displayRectangle" : {
          "topLeft" : {"x" : 0.63, "y" : 0},
          "topRight" : {"x" : 0.866, "y" : 0},
          "bottomRight" : {"x" : 0.866, "y" : 0.5553334},
          "bottomLeft" : {"x" : 0.63, "y" : 0.5553334}
        }
      },
      "actions" : [
        {
          "url" : "mailto:someone@outlook.com",
          "actionType" : "Uri"
        }
      ],
      "sources" : ["OCR"]
    },
    {
      "image" : {
        "thumbnailUrl" : "https:\/\/tse3.mm.bing.net\/th?q=%23%23TextRecognition..."
      },
      "displayName" : "##TextRecognition",
      "boundingBox" : {
        "queryRectangle" : {
          "topLeft" : {"x" : 0, "y" : 0},
          "topRight" : {"x" : 1, "y" : 0},
          "bottomRight" : {"x" : 1, "y" : 1},
          "bottomLeft" : {"x" : 0, "y" : 1}
        },
        "displayRectangle" : {
          "topLeft" : {"x" : 0, "y" : 0},
          "topRight" : {"x" : 1, "y" : 0},
          "bottomRight" : {"x" : 1, "y" : 1},
          "bottomLeft" : {"x" : 0, "y" : 1}
        }
      },
      "actions" : [
        {
          "displayName" : "CHARLENE WHITNEY Graphic Designer 888 555 1212 someone@outlook.com www.contoso.com",
          "actionType" : "TextResults"
        }
      ],
      "sources" : ["OCR"]
    }

Jika gambar berisi entitas yang diakui seperti orang yang terkenal/populer secara budaya, tempat, atau berbagai hal, salah satu tag dapat mencakup wawasan Entitas. Bidang mainEntity dan data hanya tersedia jika atribut enableEntityData di header Content-Type diatur ke true.

{
  "image" : {
    "thumbnailUrl" : "https:\/\/tse4.mm.bing.net\/th?q=Statue+of+Liberty..."
  },
  "displayName" : "Statue of Liberty",
  "boundingBox" : {
    "queryRectangle" : {
      "topLeft" : {"x" : 0.40625, "y" : 0.1757813},
      "topRight" : {"x" : 0.6171875, "y" : 0.1757813},
      "bottomRight" : {"x" : 0.6171875, "y" : 0.3867188},
      "bottomLeft" : {"x" : 0.40625, "y" : 0.3867188}
    },
    "displayRectangle" : {
      "topLeft" : {"x" : 0.40625, "y" : 0.1757813},
      "topRight" : {"x" : 0.6171875, "y" : 0.1757813},
      "bottomRight" : {"x" : 0.6171875, "y" : 0.3867188},
      "bottomLeft" : {"x" : 0.40625, "y" : 0.3867188}
    }
  },
  "actions" : [
    {
      "_type" : "ImageEntityAction",
      "webSearchUrl" : "https:\/\/www.bing.com\/search?q=Statue+of+Liberty",
      "displayName" : "Statue of Liberty",
      "actionType" : "Entity",
      "mainEntity" : {
        "name" = "Statue of liberty",
        "bingId" : "..."
      },
      "data" : {
        "id" : "https://api.cognitive.microsoft.com/api/v7/entities/...",
        "readLink": "https://www.bingapis.com/api/v7/search?q=...",
        "readLinkPingSuffix": "...",
        "contractualRules": [
          {
            "_type": "ContractualRules/LicenseAttribution",
            "targetPropertyName": "description",
            "mustBeCloseToContent": true,
            "license": {
                "name": "CC-BY-SA",
                "url": "http://creativecommons.org/licenses/by-sa/3.0/",
                "urlPingSuffix": "..."
            },
            "licenseNotice": "Text under CC-BY-SA license"
          },
          {
            "_type": "ContractualRules/LinkAttribution",
            "targetPropertyName": "description",
            "mustBeCloseToContent": true,
            "text": "Wikipedia",
            "url": "http://en.wikipedia.org/wiki/...",
            "urlPingSuffix": "..."
          }
        ],
        "webSearchUrl": "https://www.bing.com/entityexplore?q=...",
        "webSearchUrlPingSuffix": "...",
        "name": "Statue of Liberty",
        "image": {
          "thumbnailUrl": "https://tse1.mm.bing.net/th?id=...",
          "hostPageUrl": "http://upload.wikimedia.org/wikipedia/...",
          "hostPageUrlPingSuffix": "...",
          "width": 50,
          "height": 50,
          "sourceWidth": 474,
          "sourceHeight": 598
        },
        "description" : "...",
        "bingId": "..."
        }
      }
  ]
}

Lihat juga