はじめに
みなさんこんにちは!
MYJLab Advent Calendar 2024の19日目を担当する宮治研3年の@1m62cです。
(下書き保存して投稿し忘れておりました...申し訳ございません)
というわけで今回は、使い方無限大のGoogle Cloud APIについて紹介したいと思います。
Google Cloudとは
API紹介をする前に、まずはGoogle Cloudについて説明します。
Google Cloudとは、その名の通りGoogleが提供するクラウドサービスです。
Googleが実際に自社で使用しているインフラを、私たち利用者にも提供してくれているんです。
クラウドサービスとは?
アプリやデータベースなどのITリソースを、インターネット上で利用できるサービスのこと
➡ハードウェアの導入費用や工数を削減できる
しかも!私たちは普段からGoogleのサービスを使いまくっているので、Googleにはたくさんのデータが溜まっていっています。
そのおかげで、Google CloudにはAIを活用したデータ分析ツールなどが豊富に用意されています。
Google Cloud APIとは
ここから本題のGoogle Cloud APIについての説明です。
Google Cloud APIとは、こちらもその名の通り、Google Cloudが提供するWebAPIの総称です。
かなり多くの種類があるので、ここでは2つピックアップして紹介しようと思います。
Vision API:画像認識
物体検出や顔の検出、テキストの検出ができます。
以下の公式サイトでデモを体験できるので試してみます。
https://cloud.google.com/vision?hl=ja#demo
持っている画像をアップロードすると、その特徴を分析してくれるようなので、私の推しの写真を乗っけてみました。
すると!Facesのタブでは、お顔の特徴量から表情の分析をしてくれました!
Objectsのタブも見てみましょう。
こちらでは、映っているものが具体的に何なのかを予測して、スコアを%で算出してくれています。
Propertiesのタブはなんでしょうか?
こちらでは、画像に含まれる色相をその割合とともに示してくれています。
デザインにも活用できそうなツールで面白いですね。
ちなみにJSONの中身はこんな感じで、コピペ可能になっています。
{
"requests": [
{
"features": [
{
"maxResults": 50,
"type": "LANDMARK_DETECTION"
},
{
"maxResults": 50,
"type": "FACE_DETECTION"
},
{
"maxResults": 50,
"model": "builtin/latest",
"type": "OBJECT_LOCALIZATION"
},
{
"maxResults": 50,
"model": "builtin/latest",
"type": "LOGO_DETECTION"
},
{
"maxResults": 50,
"type": "LABEL_DETECTION"
},
{
"maxResults": 50,
"model": "builtin/latest",
"type": "DOCUMENT_TEXT_DETECTION"
},
{
"maxResults": 50,
"type": "SAFE_SEARCH_DETECTION"
},
{
"maxResults": 50,
"type": "IMAGE_PROPERTIES"
},
{
"maxResults": 50,
"type": "CROP_HINTS"
}
],
"image": {
"content": "(data from 10-4.jpg)"
},
"imageContext": {
"cropHintsParams": {
"aspectRatios": [
0.8,
1,
1.2
]
}
}
}
]
}
※Responseは長すぎたので割愛します。
Speech-to-Text API:音声認識
音声をテキストに変換することができます。
(ちなみに、その逆ができるText-to-Speech APIもあります)
こちらも以下の公式サイトでデモを体験できるので試してみます。
https://cloud.google.com/speech-to-text?hl=ja#demo
言語を選択した後、音声の入力をします。
音声ファイルをアップロードする方法と、その場で発話して音声を入れる方法がありますが、今回は直接PCに喋りかけてみました。
かなり精度が高いです!多少ぼそぼそ喋っても正確に認識されました。
せっかくなのでアメリカ英語でも試してみます。
(英語だけでも13種類ありました!)
私の拙い発音でもテキスト化してくれました...優秀!
発音練習を支援するサービスなんかに使えそうですね。言語学習に興味があるので活用したくなりました!
おわりに
いかがでしたか?
今回紹介した2つ以外にも、自動翻訳ができるCloud Translation APIや、機械学習に必要なAIモデルを自動作成するAutoMLなど、様々な分野のAPIが用意されています。
色々なAPIを触っていく中で「こんなもの作れるかも!」と開発物を決めるのも、わくわくして面白いですね~~
ぜひ皆さんも触ってみてくださいね。