Better Brain,
Better Chain.
scroll
ABOUT ailia SDK
ailia SDKの特徴
物体検出・画像分類・特徴抽出。
学習済みモデルを簡単にアプリに組み込み。
高速なディープラーニングがあなたの手に。
エッジ(端末)側での推論に特化した
ディープラーニングミドルウェア
簡単にアプリに組み込むことができ、
GPUを最大限活用した高速な推論を実現
完全自社開発で一貫したAPIと低レイヤーをカバーする
高度なサポートを提供
POINT01
学習済みモデルを
簡単にアプリに組み込み
80種類を超える学習済みモデルを使用して、簡単にアプリにAI機能を実装することができます。
従来、必要であった前処理と後処理のコードをailia SDKのユーティリティクラスが提供します。
また、パートナーが提供するモデルを使用することもできます。
POINT02
Unity Pluginを提供
Unity Pluginを提供。Unityを使⽤することで簡単にWebカメラの映像を取り込むことができ、ailia SDKのC# APIを使⽤して画像認識を実装することができます。


POINT03
重み係数の圧縮に対応
独⾃の重み係数圧縮を搭載しています。学習済みの重み係数をエッジ側のデバイスに圧縮して転送することで、通信時間やストレージを1/3まで節約することができます。
POINT04
クロスプラットフォームで⾼速なGPU推論
クロスプラットフォームでGPUを使⽤した⾼速な推論が可能です。VulkanとMetalを使用することで特定のメーカーに依存しない⾼速推論を実現します。もちろん、CPU向けにもNEONやAVXを使用した最適化を提供します。

DEMO
デモムービー
YOLOによる物体検出
YOLOv1〜v4の学習済みモデルを使用して人や車などの位置を検出することができます。
DarknetやKeras-Yolo3を使用して独自に学習を行った係数を読み込ませることも可能です。
Gender/Age/EmotionNetによる性別、年齢、感情推定
YOLO Faceを使用して顔を検出した後、顔画像に対して各種ネットワークを適用することで、
性別や年齢、感情を推定することができます。
VGG16やArcFaceによる特徴抽出
VGG16やArcFaceを使用することで画像から特徴量を抽出することができます。
特徴量同士の距離を計算することで、画像の類似度を計算することができ、
画像検索エンジンなどを簡単に実装することができます。
ailia Multi-Person PoseEstimatorによる骨格検出
株式会社Acculusが提供する骨格検出モデルに対応。
OpenPoseとは異なるアルゴリズムで高速な骨格検出を実現します。
CUSTOMIZE
カスタマイズした認識が可能
各種の学習フレームワークからONNX形式に変換することでailia SDKを使用した推論を行うことができます。
ONNXはopset 10と11に対応しており、100種類を超えるレイヤーをサポートします。
<Pytorch>
import torch
from torchvision import models
vgg16 = models.vgg16(pretrained=True)
x = Variable(torch.randn(1, 3, 224, 224))
torch.onnx.export(vgg16, x, 'vgg16_pytorch.onnx', verbose=True, opset_version=10)
<Chainer>
import chainercv.links as C
import onnx_chainer
model = C.VGG16(pretrained_model='imagenet')
x = np.zeros((1, 3, 224, 224), dtype=np.float32)
onnx_chainer.export(model, x, filename='vgg16_chainer.onnx', opset_version=10)
<Keras>
import keras2onnx
onnx_model = keras2onnx.convert_keras(model, model.name, target_opset=10)
temp_model_file = 'vgg16_keras.onnx'
onnx.save_model(onnx_model, temp_model_file)
<TensorFlow>
import tf2onnx
frozen_graph_def = tf.graph_util.convert_variables_to_constants(sess,sess.graph.as_graph_def(),["vgg16/predictions/Softmax"])
graph1 = tf.Graph()
with graph1.as_default():
tf.import_graph_def(frozen_graph_def)
onnx_graph = tf2onnx.tfonnx.process_tf_graph(graph1, input_names=["import/block1_conv1/kernel:0"], output_names=["import/vgg16/predictions/Softmax:0"],opset=10)
model_proto = onnx_graph.make_model("vgg16_tensorflow")
with open("vgg16_tensorflow.onnx", "wb") as f:
f.write(model_proto.SerializeToString())
CASE STUDY
利用例

Unityを使用したインタラクティブサイネージ
デジタルサイネージの前にいる人の位置や姿勢を検出して、
3Dキャラクターが適切なアクションをすることで、
インタラクションが楽しめるサイネージを実装することができます。

受付システムにおける人物検出
画像認識によって来場者を検出することで、
来訪先のアノテーションなどを提示することができます。

実店舗Analyticsにおける 人数カウント
画像認識によって実店舗の来客数や性別・年齢を計測することで、
マーケティングデータとして活用することができます。
SPEC
仕様および提供物
項目 | 仕様 |
---|---|
入力形式 | ONNX (opset=10, 11), CaffeModel |
対応OS | Windows, Mac, iOS, Android, Linux, Jetson, RaspberryPi, 組み込み機器(オプション対応) |
ライブラリ形式 | Static, Dynamic |
API | C++, C#, Python, JNI, Unity |
BLAS | IntelMKL, Accelerate.framework |
GPGPU | Metal, Vulkan, RenderScript, C++AMP, OpenCL, cuDNN |
SIMD命令セット | SSE2, AVX, NEON |
TRIAL
CONTACT
・Windowsは、米国Microsoft Corporationの米国及びその他の国における登録商標です。
・Androidは、Google Inc.の商標です。
・Macは、Apple Inc.の商標です。
・その他記載されている商品・サービスは各社の商標です。