企業間連携や IT 基盤のモダナイズなど、API の活用が広がり、国内でも API エコノミーが発展しつつあります。
API を最大限に活用するためには、セキュリティやアナリティクス、利用者サポートなど、いわゆる API 管理が重要です。
今回の放送では、Google Cloud の API 管理基盤、Apigee の特徴や機能概要、事例などをデモを交えて紹介します。
企業間連携や IT 基盤のモダナイズなど、API の活用が広がり、国内でも API エコノミーが発展しつつあります。
API を最大限に活用するためには、セキュリティやアナリティクス、利用者サポートなど、いわゆる API 管理が重要です。
今回の放送では、Google Cloud の API 管理基盤、Apigee の特徴や機能概要、事例などをデモを交えて紹介します。
appengine ja night #24 Google Cloud Endpoints and BigQueryRyo Yamasaki
appengine ja night #24で発表したGoogle Cloud Endpoints と BigQueryのスライドです。
・English version
http://www.slideshare.net/vierjp/appengine-ja-night-24-google-cloud-endpoints-and-bigquery-english
appengine ja night #24 Google Cloud Endpoints and BigQueryRyo Yamasaki
appengine ja night #24で発表したGoogle Cloud Endpoints と BigQueryのスライドです。
・English version
http://www.slideshare.net/vierjp/appengine-ja-night-24-google-cloud-endpoints-and-bigquery-english
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matchingharmonylab
公開URL:https://arxiv.org/pdf/2404.19174
出典:Guilherme Potje, Felipe Cadar, Andre Araujo, Renato Martins, Erickson R. ascimento: XFeat: Accelerated Features for Lightweight Image Matching, Proceedings of the 2024 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2023)
概要:リソース効率に優れた特徴点マッチングのための軽量なアーキテクチャ「XFeat(Accelerated Features)」を提案します。手法は、局所的な特徴点の検出、抽出、マッチングのための畳み込みニューラルネットワークの基本的な設計を再検討します。特に、リソースが限られたデバイス向けに迅速かつ堅牢なアルゴリズムが必要とされるため、解像度を可能な限り高く保ちながら、ネットワークのチャネル数を制限します。さらに、スパース下でのマッチングを選択できる設計となっており、ナビゲーションやARなどのアプリケーションに適しています。XFeatは、高速かつ同等以上の精度を実現し、一般的なラップトップのCPU上でリアルタイムで動作します。
セル生産方式におけるロボットの活用には様々な問題があるが,その一つとして 3 体以上の物体の組み立てが挙げられる.一般に,複数物体を同時に組み立てる際は,対象の部品をそれぞれロボットアームまたは治具でそれぞれ独立に保持することで組み立てを遂行すると考えられる.ただし,この方法ではロボットアームや治具を部品数と同じ数だけ必要とし,部品数が多いほどコスト面や設置スペースの関係で無駄が多くなる.この課題に対して音𣷓らは組み立て対象物に働く接触力等の解析により,治具等で固定されていない対象物が組み立て作業中に運動しにくい状態となる条件を求めた.すなわち,環境中の非把持対象物のロバスト性を考慮して,組み立て作業条件を検討している.本研究ではこの方策に基づいて,複数物体の組み立て作業を単腕マニピュレータで実行することを目的とする.このとき,対象物のロバスト性を考慮することで,仮組状態の複数物体を同時に扱う手法を提案する.作業対象としてパイプジョイントの組み立てを挙げ,簡易な道具を用いることで単腕マニピュレータで複数物体を同時に把持できることを示す.さらに,作業成功率の向上のために RGB-D カメラを用いた物体の位置検出に基づくロボット制御及び動作計画を実装する.
This paper discusses assembly operations using a single manipulator and a parallel gripper to simultaneously
grasp multiple objects and hold the group of temporarily assembled objects. Multiple robots and jigs generally operate
assembly tasks by constraining the target objects mechanically or geometrically to prevent them from moving. It is
necessary to analyze the physical interaction between the objects for such constraints to achieve the tasks with a single
gripper. In this paper, we focus on assembling pipe joints as an example and discuss constraining the motion of the
objects. Our demonstration shows that a simple tool can facilitate holding multiple objects with a single gripper.
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
appengine ja night #10 Google AppEngine で作る Google Apps Marketplace 対応サービス
1. Google AppEngine で作る
Google Apps Marketplace
対応サービス
appengine ja night #10
2010年8月30日
なかじまんソフトウェア株式会社
中嶋 信博 @nakajiman
Google API Expert (OpenSocial)
2. OpenSocial Pages for Google Apps
http://opensocial-pages.appspot.com/
• Google Apps のユーザとグ
ループをソーシャルグラフとし
て、ドメイン専用 OpenSocial
コンテナが持てる
• PC に加えて Smart Phone で
も OpenSocial ガジェットが快
適に動作するアーキテクチャ
• Google AppEngine でホストし
て Google Apps Marketplace
に対応
• ソースコードも入手可
3. 本日のゴール
• Google Apps Marketplace とは何か
Google Apps に Product をインストールすると
はどういうことか
• Application Manifest とは何か
Google Apps Marketplace に Product を掲載す
る手順
• AppEngine から OpenID Single-Sign On と 2-
legged OAuth for Data を使って Google Apps と
連携する方法
• 情報源
11. Google Apps Developer Program Site
Sell Marketplace Apps
Payment Policy
http://developer.googleapps.com/marketplace/fees
Revenue share
Vender : Google = 80 : 20
Google Checkout API
Automatic Billing or Self Reported Billing
16. Product は Google AppEngine
でホストし、マルチテナントな構成
http://opensocial-pages.appspot.com/a/${DOMAIN_NAME}/
Product の利用
Google AppEngine
ログイン OpenID Single Sign-On
データアクセス 2-legged OAuth for Data
<?xml version
<Application Application
Manifest
xmlns= … Manifest
Add it now ボタン
Google 利用規約の同意 Google
Apps データアクセスの認可 Apps Marketplace
23. Google Apps Marketplace
Product の開発から公開までの流れ
Vendor (会社情報) と
Product (製品情報) の登録
Product の開発とテスト
Vendor は公開前でもインストールできる
Google Marketplace への公開申請
Google Checkout で 100 ドル支払い
Google Marketplace による審査
結果は48時間以内にメールで通知
Google Marketplace の掲載開始
誰でもインストールできる
24. Vendor (会社情報)
• Company logo
• Vendor name
• Phone number
• Email address
• Home page URL
• Address line
• Town
• Zip/post code
• Country
• Vendor overview
25. Product (製品情報)
• My product may be directly
installed into Google Apps
domains
• Category
On
• Name
• Summary Overview
• Full Overview
• Application Manifest
• Pricing Summary
• Terms of Service
• Benefit points / External links
• Screenshot / Logo
• Screencast / Video or success
story collateral
• Version information
• Google Analytics
• Google APIs
33. Google Data Java Client Library
Google Apps Provisioning API で必要なファイル
• gdata-core-1.0.jar
• gdata-client-1.0.jar
• gdata-appsforyourdomain-1.0.jar
35. Google Apps Provisioning API
User 情報の取得
UserService service = new UserService("User");
service.setOAuthCredentials(params, new OAuthHmacSha1Signer());
service.useSsl();
URL url = new URL("https://apps-apis.google.com/a/feeds" +
"/n35.com/user/2.0/nakajiman");
UserEntry user = service.getEntry(url, UserEntry.class);
String givenName = user.getName().getGivenName();
String familyName = user.getName().getFamilyName();
boolean admin = user.getLogin().getAdmin();
36. Google Apps Provisioning API
Group 情報の取得
AppsPropertyService service =
new AppsPropertyService("AppsProperty");
service.setOAuthCredentials(params, new OAuthHmacSha1Signer());
service.useSsl();
URL url = new URL("https://apps-apis.google.com/a/feeds" +
"/group/2.0/n35.com/sales@n35.com");
GenericEntry group = service.getEntry(url, GenericEntry.class);
String title = group.getProperty("groupName");
String description = group.getProperty("description");
37. Google Apps Provisioning API
Group メンバー情報の取得
AppsPropertyService service =
new AppsPropertyService("AppsProperty");
service.setOAuthCredentials(params, new OAuthHmacSha1Signer());
service.useSsl();
URL url = new URL("https://apps-apis.google.com/a/feeds" +
"/group/2.0/n35.com/sales@n35.com/member");
GenericFeed members = service.getFeed(url, GenericFeed.class);
for (GenericEntry member : members.getEntries()) {
String memberId = member.getProperty("memberId");
38. 情報源
Google Apps Marketplace
http://www.google.com/enterprise/marketplace/
Google Apps Developer Program Site
http://developer.googleapps.com/
Google Apps APIs (en)
http://code.google.com/intl/en/googleapps/
Google Data Java Client Library
http://code.google.com/p/gdata-java-client/
OpenSocial Pages for Google Apps
http://opensocial-pages.appspot.com/