JP2022552383A - 目標検出モデルのマルチパストレーニングによる機器設定の調整 - Google Patents

目標検出モデルのマルチパストレーニングによる機器設定の調整 Download PDF

Info

Publication number
JP2022552383A
JP2022552383A JP2022522696A JP2022522696A JP2022552383A JP 2022552383 A JP2022552383 A JP 2022552383A JP 2022522696 A JP2022522696 A JP 2022522696A JP 2022522696 A JP2022522696 A JP 2022522696A JP 2022552383 A JP2022552383 A JP 2022552383A
Authority
JP
Japan
Prior art keywords
images
image processing
category
processing model
appliance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022522696A
Other languages
English (en)
Other versions
JP7239782B2 (ja
Inventor
タン・ハ
ユシアン・ガオ
ジカイ・ウ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Midea Group Co Ltd
Original Assignee
Midea Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Midea Group Co Ltd filed Critical Midea Group Co Ltd
Publication of JP2022552383A publication Critical patent/JP2022552383A/ja
Application granted granted Critical
Publication of JP7239782B2 publication Critical patent/JP7239782B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2642Domotique, domestic, home control, automation, smart house
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biophysics (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

マシンを制御するために用いられるシステム及び方法であって、前記方法において、第1画像処理モデルを受信することであって、当該第1画像処理モデルは入力画像を第1カテゴリまたは第2カテゴリに分類するようにトレーニングされ、第1カテゴリは第1タイプの少なくとも一つの対象が含まれる画像に対するものであり、第2カテゴリは第1タイプの少なくとも一つの対象が含まれない画像に対するものであることと、偽陽性結果としての推定結果のサブセットを識別することと、当該第1セットの画像から第1セットの新たなトレーニングデータを生成することであって、前記第1セットの画像における対応画像を補強して対応する複数の画像を取得することと、対応する複数の画像が偽第1カテゴリの少なくとも一つの対象を含むとマークされることとを含むことと、第2画像処理モデルをトレーニングすることにより入力画像を第1カテゴリ、第2カテゴリと偽第1カテゴリに分類することと、第2画像処理モデルの推定結果に基づいて、マシンの機器設定を修正することと、を含む。

Description

(関連出願の相互参照)
本願は、2019年10月18日にアメリカ特許局に提出された、出願番号が16/657,975であるアメリカ特許出願に基づいて優先権を主張し、その全内容が参照として本願に組み込まれる。
本願の実施例は、画像処理分野に関し、特に改善の画像処理モデルを用いて対象を検出して、検出された対象に基づいて機器を自動的に操作するシステム及び方法に関する。
例えば、家電製品の機器は、一般的に異なる事前定義された操作設定を有する。例えば、洗濯機は複数種の洗濯循環設定を有し、複数種の洗濯循環設定は、異なる水温、タンブリング速度、回転速度等を有する。電子レンジは複数種の調理設定を有し、複数種の調理設定は異なるマイクロ波パワーレベル及び調理時間を有する。適切な設定を選択することは、機器の性能を最適化させるこよにとって重要である。例えば、選択したい衣類に対して適切な洗濯循環設定を選択することは、衣類の損傷(例えば、引張り、収縮または変色)の防止及び最適な洗浄効果の実現にとって非常に重要である。いくつかの場合において、機器は画像処理モデルに依存して操作される一つまたは複数の対象(または対象のタイプ)(例えば、洗濯機の衣類のタイプ、電子レンジの食物のタイプ)を検出し、かつ検出された一つまたは複数の対象(または対象のタイプ)に基づいて機器操作設定を自動的に選択する。
例えば、畳み込みニューラルネットワーク(convolutionalneuralnetworks、CNN)及びその変体の機器学習モデルは強い画像処理モデルであり、対象検出タスクに広く適用されている。しかしながら、機器学習モデルの性能が悪くなりがちであるので、各種の機器の操作対象としての関連対象に対する分類及び検出が不正確になる。
これらの原因に基づいて、対象の検出及び分類に用いられる画像処理モデルを向上させることが強く求められている。
背景技術で述べられたように、例えば、畳み込みニューラルネットワーク(CNN)及びその変体の機器学習モデルは強い画像処理モデルであり、対象検出タスクに広く適用されている。しかしながら、誤分類されやすい対象のカテゴリ、例えば対象の検出/分類アルゴリズムの観点で陽性サンプルと非常に類似するように見られる「難」陰性サンプル(偽陽性)、または陰性サンプルと非常に類似するように見られる「難」陽性サンプル(偽陰性)が存在するので、高精度(例えば、偽陽性率が低い)及び高リコール率(偽陰性率が低い)という両者で対象検出を行うのは挑戦的である。例えば、衣類が洗濯機のドラムに積載されると、絡み合ったり、ねじれたり、ひいては結び目ができたりすることが多い。結果的に、既存の画像処理モデルは常に間違って1種の衣類(例えば、捩じれて絡み合ったシャツ)を別の1種の衣類(例えば、ブラジャー)と識別することによって、偽陽性出力を継続的に生成する。仮に、洗濯機が間違ってブラジャーを洗濯するために(例えば、低いタンブリング速度及び低い回転速度が求められる)、シャツを洗濯するために設計された洗濯循環設定(例えば、高いタンブリング速度、高い回転速度等)を選択すれば、洗濯機はブラジャーを永久に損傷する。
これらの原因によって、画像処理モデルの対象の検出及びバイカテゴリ分類の精度を向上させ、同時に高いリコール率を保ち、かつ検出された分類済みの対象に基づいて機器操作設定を自動的に選択するために、改善の方法及びシステムが強く求められる。
本発明はシステム及び方法を説明し、この方法において、第1画像処理モデルを受信することであって、第1画像処理モデルは対応する入力画像を第1カテゴリまたは第2カテゴリに分類するようにトレーニングされ、第1カテゴリは、第1タイプの少なくとも一つの対象が含まれる画像に対するものであり、第2カテゴリは、第1タイプの少なくとも一つの対象が含まれない画像に対するものであることと、第1画像処理モデルが出力した複数の推定結果から、偽陽性結果としての推定結果の第1サブセットを識別し、偽陽性結果は、第1タイプの少なくとも一つの対象が含まれない第1セットの画像を第1タイプの少なくとも一つの対象が含まれる画像に対する第1カテゴリに分類するものであることと、第1セットの画像から第1セットの新たなトレーニングデータを生成することであって、第1セットの画像における対応画像を補強して第1の対応する複数の画像を取得することと、第1の対応する複数の画像が偽第1カテゴリの少なくとも一つの対象を含むとマークされることとを含み、偽第1カテゴリは、第1カテゴリ及び第2カテゴリと異なることと、少なくとも第1セットの新たなトレーニングデータが含まれるトレーニングデータ集合によって第2画像処理モデルをトレーニングすることにより、対応する入力画像を、第1タイプの少なくとも一つの対象が含まれる画像に対する第1カテゴリと、第1タイプの少なくとも一つの対象が含まれない画像に対する第2カテゴリと、第1画像処理モデルによって第1カテゴリと誤分類されやすい対象が含まれる画像に対する偽第1カテゴリと、に分類することと、第1マシンによってキャプチャされた第1入力画像の第1推定結果に基づいて、第1マシンの機器設定を修正することであって、第1推定結果は、第2画像処理モデルによって生成され、かつ第1カテゴリに対応することと、を含む。
本発明で説明された方法及びシステムに基づいて、画像処理モデルを用いて誤分類されやすい対象を検出及び分類ことに関連する各種の問題を解決できる。
一つの方面において、一部の実施例により、家電製品に通信可能に結合され、かつ家電製品の一つまたは複数の機能を制御するように配置されるコンピューティングシステムによって前記方法を実行する。
一部の実施例により、コンピューティングシステムは、プロセッサと、命令が記憶されているメモリとを含み、前記命令が実行されるとき、一つまたは複数のプロセッサに本発明で説明される方法を実行させる。一部の実施例により、電子デバイスは、一つまたは複数のプロセッサと、一つまたは複数のプログラムが記憶されているメモリとを含み、一つまたは複数のプログラムが一つまたは複数のプロセッサによって実行されるように配置され、かつ一つまたは複数のプログラムは命令を含み、当該命令は本文で説明されるいかなる方法の操作の性能を実行しまたはその実行を引き起こすことに用いられる。一部の実施例により、非一時的なコンピュータ可読記憶媒体に命令が記憶され、当該命令が電子装置によって実行されるとき、電子装置が本文で説明されるいかなる方法の操作の性能を実行しまたはその実行を引き起こす。一部の実施例により、電子デバイスは、画像のキャプチャに用いられる装置と、本文で説明されるいかなる方法の操作の性能を実行しまたはその実行を引き起こす装置とを含む。
以下の詳しい説明によって、本願の様々な追加した利点が明らかである。
一部の実施例による家電製品システムの操作環境を示すブロック図である。 一部の実施例による家電製品システムを示すブロック図である。 一部の実施例による家電製品システムを示すブロック図である。 一部の実施例による、洗濯機に積載された洗濯される衣類の検出画像に基づいて洗濯循環設定を自動的に選択するプロセスの模式図である。 一部の実施例による対象の検出及びバイカテゴリ分類の精度を向上させるとともにリコール率を保つように画像処理モデルをトレーニングすることに用いられるプロセスの模式図である。 一部の実施例による図3で説明されるマルチパストレーニングプロセスにおいて生成される画像処理モデルの模式図であり、そのうち、更新されるモデルがリコール率を保つとともに対象の検出及びバイカテゴリ分類の精度を向上させる。 一部の実施例による、物体検出モデルのマルチパストレーニングによって生成された画像検出とバイカテゴリ分類結果とに基づいて機器設定の自動選択を実行する方法のフローチャートである。 一部の実施例による例示的な家電製品の図である。
図面における複数の図による同一の符号は対応する部分を示す。
図面を参照しなから好ましい実施例に対して詳しく説明することによって、以下は開示した技術の上記した特徴並びに利点及びその付加特徴並びに利点をよりよく理解する。
現在開示された技術の実施例または従来技術における技術的手段をより良く説明するために、以上は実施例または従来技術を説明するために必要な図面を簡単に紹介した。明らかに、以上の説明における図面は現在開示された技術の一部の実施例を示すものに過ぎず、そして、当業者にとって創造工夫をせずにこれらの図面により他の図面を取得することもできる。
以下は実施例を詳しく参照して、図面において実施例の例を示す。以下の詳しい説明において、本開示が呈したテーマに対する徹底した理解を提供するために多くの具体的な詳細を説明した。しかし当業者にとってこれらの具体的な詳細がない場合でも本開示のテーマを実践できることは明らかである。他の実例において、実施例の各方面を不必要的に誤魔化すことを回避するために周知方法、プロセス、コンポーネント及び回路を詳しく説明していない。
以下は本願の実施例における図面を参照しながら、本願の実施例における技術的手段に対して明らかに且つ完全に説明する。明らかに、説明される実施例は本願の一部の実施例であり、全ての実施例ではない。本願における実施例に基づいて、当業者が創造的な労働をしないうちに取得するすべての他の実施例は、本願の範囲に属する。
図1Aは一部の実施例による家電製品システムの操作環境100を示すブロック図である。
家電製品システムの操作環境100は一つまたは複数の家電製品(例えば、電器A110、電器B112及び電器C114)を含み、一つまたは複数の家電製品はネットワーク190(例えば、インターネットのワイドエリアネットワーク、またはスマートホームネットワークのローカルエリアネットワーク)を介して一つまたは複数のサーバ(例えば、トレーニングセットサーバ120及びトレーニングモデルサーバ122)に接続され、及び一つまたは複数のユーザデバイス(例えば、ユーザデバイスA111、ユーザデバイスB113及びユーザデバイスC115)および/またはアノテーションステーション128に選択可能に接続される。
一部の実施例において、一つまたは複数の家電製品(例えば、スマート洗濯機、スマート電子レンジ等)は、元のセンサデータ(例えば、画像、重量、温度、ヒートマップのデータ等)を収集し且つ元のセンサデータを対応するユーザデバイス(例えば、スマートフォン、タブレット等)、アノテーションステーション128(例えば、ワークステーション及びデスクトップコンピューター)および/またはトレーニングセットサーバ120(例えば、家電製品のメーカーまたはメーカー向けのサードパーティのサービスプロバイダーによって提供されるサーバ)に送信するように配置される。一部の実施例において、一つまたは複数の家電製品は、トレーニングモデルサーバ122および/または対応するユーザデバイスから制御命令を受信するように配置される(例えば、電器C114は野菜をローストするためにトレーニングモデルサーバ122から制御命令を受信して電子レンジの温度を425°Fに設置することができ、電器A110はユーザデバイスA111から制御命令を受信して洗濯循環を選択することができる)。一つまたは複数の家電製品(例えば、電器A110、電器B112及び電器C114)の更なる詳細に関しては本開示の他の部分の詳しい説明を参照する。
一部の実施例において、一つまたは複数のユーザデバイスは、対応する電器から元のセンサデータを受信するように配置される(例えば、電器A110に対応するユーザデバイスA111は電器A110から元のセンサデータを受信するように配置される)。一部の実施例において、一つまたは複数のユーザデバイスはさらにアノテーションデータをアノテーションステーション128および/またはトレーニングセットサーバ120に送信するように配置される。一部の実施例において、一つまたは複数のユーザデバイスは制御命令を生成して対応する電器に制御命令を送信するように配置される(例えば、ユーザデバイスA111は電器A110に命令を送信して電器A110をオン/オフし、または電器A110における設定を選択する)。一部の実施例において、一つまたは複数のユーザデバイスは携帯電話、タブレットまたはコンピュータデバイスを含むが、これらに限定しない。一部の実施例において、一つまたは複数のユーザデバイスは一つの電器に対応してもよく(例えば、コンピュータおよび携帯電話はいずれも電器A110に対応してもよく(例えば、機器設定のプロセスにおいて両方も電器Aの制御デバイスとして登録される)、それによって、電器A110が元のセンサデータをコンピュータおよび携帯電話中の一方または両方に送信することができる)。一部の実施例において、ユーザデバイスは電器に対応する(例えば、電器とデータを共有するおよび/または電器と通信する)(例えば、ユーザデバイスA111は電器A110に対応する)。例えば、電器A110はデータを収集して(例えば、画像または温度データなどの元のセンサデータ)、収集されたデータをユーザデバイスA111に送信してもよく、それによって、ユーザはユーザデバイスA111において収集されたデータをアノテーションすることができる。
一部の実施例において、アノテーションステーション128は一つまたは複数の電器(例えば、電器110、112および114)から収集されたデータを受信するように配置され、それによって、専門なアノテーション担当者が収集されたデータに対してアノテーションする。一部の実施例において、アノテーションステーション128は一つまたは複数のユーザデバイス(例えば、ユーザデバイス111、113および115)からアノテーションデータを受信するように配置され、それによって、専門なアノテーション担当者によるレビュー、編集、および/または承認を行う。一部の実施例において、一つまたは複数のユーザデバイスからのアノテーションデータがアノテーションステーション128で承認されると、アノテーションステーションは、承認されたデータをトレーニングセットサーバに記憶されたトレーニングデータ集合に含まれるようにトレーニングセットサーバ120に送信する。一部の実施例において、アノテーションステーション128はサーバ120からアノテーションデータを検索して、専門なアノテーション担当者によるレビュー、編集、および/または承認を行う。一部の実施例において、アノテーションステーション128はサーバ120からアノテーションされていないデータを検索して、専門なアノテーション担当者によるアノテーションを行う。アノテーションステーション128においてアノテーションされたおよび/または承認されたセンサデータはトレーニングデータ集合に含まれるようにサーバ120に返される。
一部の実施例において、トレーニングセットサーバ120は一つまたは複数の家電製品(例えば、電器110、112および114)から元のセンサデータを受信し、および/または一つまたは複数のユーザデバイス(例えば、ユーザデバイス111、113および115)からアノテーションデータを受信するように配置される。一部の実施例において、トレーニングセットサーバ120はさらに、アノテーションステーション128に元のデータおよび/またはアノテーションデータを送信して、アノテーションステーション128からアノテーションされたおよび/または承認されたアノテーションデータを受信するように配置される。トレーニングセットサーバ120は、トレーニングモデルサーバ122が採用するトレーニングモデルおよびトレーニング方法によって、アノテーションデータを事前処理し、例えば、トレーニングデータに対してグループ化、分割並びに関連付けし、及びトレーニングデータをインデックス並びに記憶するように配置される。トレーニングセットサーバ120は、トレーニングデータをリクエストする特定のトレーニングモデルに基づいて、選択されたトレーニングデータ(例えば、アノテーションステーション128において承認されたアノテーションデータに対応するデータ又はこのアノテーションデータ基づくデータを含む)をトレーニングモデルサーバ122に送信するように構成される。
一部の実施例において、トレーニングモデルサーバ122は、トレーニングセットサーバ120からトレーニングデータを受信するように配置される。トレーニングモデルサーバはさらに、選択可能に一つまたは複数の電器および/またはユーザデバイスに制御命令(例えば、特定の家電製品の制御プロトコルに従って準備された機器命令)および/またはテキストデータ(例えば、テキストメッセージ)を送信するように配置される。トレーニングモデルサーバ122は、識別モデル123(例えば対象を識別および分類するために用いられる)、位置決めモデル124(例えば、対象の位置決めおよび対象の輪郭の表示に用いられる)および他のモデルを含む。識別モデル123は、家電製品によって操作される対象(例えば、衣類、食物等)の識別に関連する。位置決めモデル124は、家電製品における品物の位置決めに関連する。例えば、位置決めモデル124は、スマートオーブンのオーブンラックの左側にある2枚の鶏肉、およびスマートオーブンのオーブンラックの右側にある4枚のクッキーを識別して、スマートオーブンによってキャプチャされた画像においてそれらの輪郭を一つずつ描くことに用いられ。トレーニングモデルサーバ122は、トレーニングセットサーバ120から受信したトレーニングデータに基づいて識別モデル123、位置決めモデル124および/または他のモデルをトレーニングする。識別モデル123、位置決めモデル124および他のモデルのトレーニングが十分に完了すると(例えば、精度の閾値レベルに達すると)、トレーニングセットサーバ120は家電製品からリクエストを受信して、家電製品によってキャプチャされたセンサデータに基づいてアイテムのアイデンティティ/位置をリアルタイムで決定する。一部の実施例において、トレーニングセットサーバ120によってアイテムを決定する条件は、リクエストを行った家電製品に返されて提供され、それにより、各家電製品は決定されたアイテムの条件に基づいて適切な動作を決定し、例えば、家電製品の操作を変化し、および/またはユーザに警告する。
一部の実施例において、家電製品(例えば、電器110、112および114)、ユーザデバイス(例えば、ユーザデバイス111、113および115)、アノテーションステーション128、トレーニングセットサーバ120とトレーニングモデルサーバ122は一つまたは複数のネットワーク190によって接続される(例えば、一つまたは複数のネットワーク190とデータを共有し、および/またはそれと通信する)。一つまたは複数のネットワーク190は有線および無線ネットワークを含んでもよく、かつ家庭のローカルエリアネットワークまたはワイドエリアネットワーク(例えば、インターネット)であってもよい。
図1Bは一部の実施例による家電製品システム101を示すブロック図である。
一部の実施例において、図1Bに示すように、家電製品システム101は、家電製品140および家電製品140と別に実現されるコンピューティングシステム130を含む。家電製品140は、図1Aにおける家電製品110、112および114のいずれか一つとして用いられることができる。一部の実施例において、コンピューティングシステム130は一つまたは複数のネットワーク190を介して家電製品140と通信する。一部の実施例において、コンピューティングシステム130はユーザデバイスで実現される(例えば、家電製品を制御し且つ家電製品とインタラクションするためのユーザーアプリケーションに関連する)。一部の実施例において、コンピューティングシステム130および電器140はさらに、コンピューティングシステム160と通信して、クライアント-サーバーに基づいて、コンピューティングシステム130および電器140におけるいくつかの機能を完成させる。一部の実施例において、コンピューティングシステム160は家電製品のメーカーのサーバで(例えば、トレーニングモデルサーバ122で)実現される。一部の実施例において、コンピューティングシステム160はスタンドアロンコンピュータで(例えば、スマートホームのローカルサーバで)実現される。
図1Bを参照し、コンピューティングシステム130は、上記の図1Aに関して説明されたユーザデバイス(例えば、ユーザデバイス111、113および115)に対応する、アノテーションユーザインターフェースモジュール132、画像処理モジュール134、ネットワーク通信ユニット136および一つまたは複数のデータベース138のうちの一つまたは複数を含む。一部の実施例において、コンピューティングシステム130は、ユーザ側操作進捗監視モジュール149およびユーザ側電器機能制御モジュール153をさらに含み、それにより、上記のような家電製品システムのデータ収集およびアノテーションを促進するほか、さらに家電製品システムの機器操作進捗監視および電器制御を促進する。
一部の実施例において、アノテーションユーザインターフェースモジュール132により、コンピューティングシステム130のユーザが対応する電器140(例えば、電器110、112または114)から受信された元のセンサデータを閲覧およびアノテーションできる。例えば、ユーザはそのユーザデバイス(例えば、ユーザデバイス111、113または115)におけるアプリケーションを使用して対応する電器によって記録された画像および温度データを閲覧することができる。一部の実施例により、ユーザは収集されたデータに対してアノテーションおよび詳細を追加できる。
一部の実施例において、画像処理モジュール155は、電器140のイメージングシステムによってキャプチャされた画像を取得して、当該画像を処理して分析する。画像処理モジュール154の機能および電器140のイメージングシステムの機能は、以下に例えば図3を参照して説明される。
ネットワーク通信ユニット136により、コンピューティングシステム130は、一つまたは複数のネットワーク190を介して電器140および/またはコンピューティングシステム160と通信することができる。
一部の実施例において、データベース138は前にキャプチャされた対象画像又は他の類似する家電製品システムからの画像を含む。一部の実施例において、データベース138は、コンピューティングシステムがユーザーに栄養情報およびレシピを提供することを可能にする成分データベース、またはコンピューティングシステムがユーザーに洗濯命令を提供することを可能にする衣類データベースを含む。
一部の実施例において、コンピューティングシステム130は、コンピューティングシステム160および電器140と結合してユーザ側機能、例えば、ユーザ側操作進捗監視および電器機能制御のユーザ側機能を提供するアプリケーションを含む。
一部の実施例において、ユーザ側進捗監視モジュール149は電器140によってキャプチャされたリアルタイムのセンサデータに基づいて機器操作の進捗を決定するように配置される。
一部の実施例において、ユーザ側電器機能制御モジュール153はユーザに対してユーザインターフェースを提供して電器の機能(例えば、電器のオン/オフまたは電器のパラメータの設置等)を直接的に制御し、および/または進捗監視の結果に基づいて制御命令を自動的に生成するように配置される。一部の実施例において、進捗監視の結果はユーザ側進捗監視モジュール149からユーザ側電器機能制御モジュール153に提供される。一部の実施例において、進捗監視の結果はコンピューティングシステム160からユーザ側電器機能制御モジュール153に提供される。一部の実施例において、進捗監視の結果は電器140からユーザ側電器機能制御モジュール153に提供される。
一部の実施例において、電器140は、1つまたは複数の第1センサ(例えば、センサ141)、1つまたは複数の加熱ユニット143、ディスプレイ144、I/Oモジュール145、ユーザインターフェース146、ネットワーク通信ユニット147、機械ユニット148、制御モジュール155、イメージングシステム、および選択可能な電器側動作進捗監視モジュール149’を含む。制御モジュール155は、電器側電器機能制御ユニット153’を選択可能に含む。
一部の実施例において、一つまたは複数の第1センサ141は、構造化データ、例えば温度、重量および/または湿度をキャプチャするように配置される。本開示で討論されたように、構造化データは、例えば、温度、湿度、時間、オン/オフ、オーブンモード等の定量または状態データを示す。例えば、一つまたは複数の第1センサ212は、家電製品140の温度センサ(例えば、温度計)または湿度センサ、または重量センサであってもよい。
一部の実施例において、一つまたは複数の加熱ユニット143は、加熱電器の少なくとも一部として配置される(例えば、加熱スマートオーブンの調理室の加熱コイルとして配置される)。
一部の実施例において、電器140はディスプレイ144を含み、ディスプレイ144はユーザに電器140に関する情報(例えば、現在選択される洗濯循環)を提供する。一部の実施例において、ディスプレイ144はI/Oモジュール145およびユーザインターフェース146と集積されてもよく、それによって、ユーザが情報を電器140に入力しまたは電器140から情報を読み出す。一部の実施例において、ディスプレイ144は、I/Oモジュール145およびユーザインターフェース146と結合してユーザにアドバイス、アラームと栄養情報を提供して、ユーザから制御命令(例えば、電器140を介して提供されるハードウエアおよび/またはソフトウェアインターフェース)を受信する。一部の実施例において、ディスプレイ144は、タッチスクリーンディスプレイ、またはボタンを含むディスプレイであってもよい。一部の実施例において、ディスプレイ144は、タッチスクリーン特徴を有しない簡単なディスプレイ(例えば、従来のLEDまたはLCDディスプレイ)、かつユーザインターフェース146は、手動で制御できるハードウエアボタンまたはノブであってもよい。一部の実施例において、ユーザインターフェース146は、選択可能に、ディスプレイ、スピーカ、キーボード、タッチスクリーン、音声入出力インターフェース等のうちの一つまたは複数を含む。
ネットワーク通信ユニット147は、機能でネットワーク通信ユニット137に類似する。ネットワーク通信ユニット147により、電器140が一つまたは複数のネットワーク190を介してコンピューティングシステム130および/またはコンピューティングシステム160と通信する。
本開示で説明された機械ユニット148は、家電製品140の内部感知(例えば、イメージング)、加熱および/またはレイアウトを物理的に変化させるように配置される、電器140のハードウエアおよび対応するソフトウェア並びにファームウェアコンポーネントを指す。例えば、一つまたは複数の第1センサ141は機械ユニットに対応してもよく、それにより、一つまたは複数のセンサ141が電器140内の対応する領域をスキャンするように移動することができる(例えば、モーターは、所定の領域においてデータをキャプチャするために、所定の領域においてセンサを移動させるように構成されてもよい)。一部の実施例において、家電製品システムの家電製品機能制御ユニット(例えば、家電製品側家電製品機能制御モジュール153’、ユーザ側電器機能制御モジュール153および/またはサーバ側電器機能制御モジュール153’’)からの命令に基づいて電器140の機械ユニット148を操作する。
一部の実施例において、電器側操作進捗監視モジュール149’は電器140の操作進捗を監視するように配置される。例えば、電器がスマートオーブンである場合、電器側操作進捗監視モジュール149’は一つまたは複数の第1センサ212および/または一つまたは複数の第2センサ214が記録した元のデータに基づいて、食物が中程度の熟度に調理されたと決定してもよい。一部の実施例において、電器側操作進捗監視モジュール149’は、食物アイテムの位置および輪郭決定モデルと、コンピューティングシステム160でトレーニングされた食物調理進行レベル決定モデルとを使用して、センサ141及びイメージングシステムによってキャプチャされたリアルタイムのセンサデータに基づいて、食物アイテムの調理の進捗を決定するように構成される。
一部の実施例において、イメージングシステムは、一つまたは複数の第2センサ142を含む。一つまたは複数の第2センサ142は非構造化データをキャプチャするように配置される。非構造化データの例は、RGB画像および熱画像または赤外線画像を含む。例えば、電器がスマートオーブンである場合、一つまたは複数の第2センサ142は電器の調理箱にある食物の静止画像またはビデオをキャプチャまたは記録するように配置される。一部の実施例において、電器がスマートオーブンである場合、イメージングシステムはデータ記憶システムを含み、データ記憶システムは、食物調理箱の寸法、食物調理箱内の基準マークの寸法、カメラと食物調理箱内の各種基準マークとの間の距離を記憶し、それにより、カメラで撮影した画像を用いて画像内の食物アイテムの寸法及び形状を正確に決定することができる。そのため、イメージングシステムは、従来のイメージングシステムにおける、ユーザーが画像内のアイテムのサイズ、位置、および方向の情報を利用せずに、画像内において基準マークを配置し、又は画像を使用することに対する特別な注意を必要とする問題を排除した。一部の実施例において、イメージングシステムは、画像キャプチャトリガシステムを含む。例えば、一部の実施例において、画像キャプチャトリガシステムがカメラの視野において変化があったことを検出するとき、画像キャプチャがトリガされる。例えば、オーブンの扉が開かれると、オーブン内の照明条件が変化され、オーブンの扉が開かれることに応答して画像のキャプチャがトリガされる。一部の実施例において、食物アイテムがカメラの視野で現れ始めるとき、画像キャプチャがトリガされる。一部の実施例において、食物アイテムが完全に挿入され、且つオーブンの扉が閉じられると、画像キャプチャがトリガされる。一部の実施例において、画像キャプチャトリガシステムはさらに、オーブンの扉が開かれる前にオーブン内部の箱基線画像としてオーブンラックの画像を直ちにキャプチャして記憶するように、カメラに対して指示する。一部の実施例において、例えば、ユーザが食物アイテムを食物調理箱に挿入した後、ユーザの入力に応答して、手動で画像キャプチャをトリガする。手動トリガーがより簡単でその実現が複雑ではなく、且つ手動トリガーにより、ユーザーが食材アイテムの特徴を最も反映できる画像を意図的にキャプチャして成分認識に用いられる。一部の実施例において、画像処理モジュール154は、一つまたは複数の第2センサ142によってキャプチャされた画像を取得して、食物アイテムを挿入する前にキャプチャされた箱基線画像に基づいて画像に対して事前処理を行って、画像から背景を消去する。箱基線画像は、家電システムの食物調理箱内の食物サポートプラットフォームの適切な状態をキャプチャし、食物アイテムが含まれる画像に優れたフィルタリングを提供して背景を消去する。
一部の実施例において、制御モジュール155は、センサ制御151、センサ制御152および電器側電器機能制御モジュール153’を含む。センサ制御151は一つまたは複数の第1センサ141を制御および調整するように配置される。例えば、センサ制御151は、一つまたは複数の第1センサ141が1分間おきに温度データを記録するために、命令を送信してもよい。センサ制御152は一つまたは複数の第2センサ142を制御および調整するように配置される。例えば、一つまたは複数の第2センサ142が移動前に開始位置に位置しかつ移動後に最終位置に位置すると、センサ制御152は、一つまたは複数の第2センサ142が第1方向に沿って移動し、ピクチャーをキャプチャするように、命令を送信してもよい。
電器側電器機能制御モジュール153’は、電器140の各種の機能を制御および調整するように配置される。例えば、電器側電器機能制御モジュール153’は、一つまたは複数の加熱ユニットにおける第1加熱ユニットを活性化するために加熱ユニット143に命令を送信し、またはその位置を変えさせるために機械ユニット148に命令を送信する。一部の実施例において、電器側電器機能制御モジュール153’は事前配置された操作プロトコルに基づいて(例えば、電器140の正常で常套な機能を実現させるために)制御命令を生成してそれを電器140の各コンポーネントに送信する。一部の実施例において、電器側電器機能制御モジュール153’は、家電製品内のリアルタイム操作進捗監視に基づいて、制御命令を生成して家電製品140の各コンポーネントに制御命令を送信する(例えば、事前設定された反応プロトコルまたはプログラムに基づいて、ユーザーの介入なしに電器140の機能を自動的に調整する)。一部の実施例において、電器側電器機能制御モジュール153’は、ユーザデバイスから受信したリアルタイムのユーザ命令または電器140のユーザインターフェース146を介して受信したリアルタイムのユーザ命令に基づいて制御命令を生成し、且つ制御命令を電器140の各コンポーネントに送信する。一部の実施例において、操作進捗監視の結果をユーザ側操作進捗監視モジュール149から電器側電器機能制御モジュール153’に提供する。一部の実施例において、操作進捗監視の結果をコンピューティングシステム160から電器側電器機能制御モジュール153’に提供する。一部の実施例において、操作進捗監視の結果を電器側操作進捗監視モジュール149’から電器側電器機能制御モジュール153’に提供する。
一部の実施例において、コンピューティングシステム160は、サーバ側操作進捗監視モジュール149’’およびサーバ側電器機能制御モジュール153’’を含む。一部の実施例において、サーバ側操作進捗監視モジュール149’’は図1Aに示す識別モデル123、位置決めモデル124および他のモデルを使用して、家電製品140から(例えば、直接的にまたはコンピューティングシステム130を介して)受信したリアルタイムのセンサデータに基づいて対象のアイデンティティ、位置、プロファイルおよび他の条件を決定する。一部の実施例において、コンピューティングシステム160は、例えば、図1Aにおけるトレーニングモデルサーバ122によって実現される。
図1Bにおける家電製品システム101内の各種のシステムの機能は説明的なものに過ぎない。機能の他の配置および機能の他の分割は可能である。各種の実施例において、一つのサブシステムのいくつかの機能は別の一つのサブシステムにおいて実現されてもよい。
一部の実施例において、図1Cに示すように、家電製品システム101は、電器140’と集積されるコンピューティングシステム130’を含む。一部の実施例において、コンピューティングシステム130’は、コンピューティングシステム160’と通信して電器140’のいくつかの機能を完成させる。一部の実施例において、電器140’は、選択可能に、コンピューティングシステム160と通信して電器140’のいくつかの機能をアウトソーシングしてもよい。
図1Cを参照し、電器140’は、内蔵するコンピューティングシステム130’を有する。電器140’は、センサ141、加熱ユニット143、ディスプレイ144、I/Oモジュール145、ユーザインターフェース146、ネットワーク通信ユニット147、機械ユニット148およびイメージングシステムを含む。電器140’のこれらのコンポーネントは電器140におけるコンポーネントに対応し、かつ類似する機能を有し、簡潔のために、ここでは繰り返して説明しない。
一部の実施例において、電器140’内のコンピューティングシステム130’は、制御モジュール155’、センサ制御151’、センサ制御152’、電器側操作進捗監視システム149’”、電器側電器機能制御モジュール153’”、画像処理システム154’、データベース138’、及び電器側アノテーションユーザインターフェースモジュール132’を含む。これらのコンポーネントの機能はそれらが電器140において同一の名称を有する対応する対応物に対応して(例えば、センサ制御151’はセンサ制御151と同一の機能を有する)、簡潔のために、ここでは繰り返して説明しない。一部の実施例において、アノテーションユーザインターフェースモジュール132”’により、ユーザが電器140と分離するユーザデバイスにおいてローユーザデータを閲覧およびアノテーションできる。それに比べて、電器側アノテーションユーザインターフェースモジュール132’により、ユーザが電器140’のディスプレイ144においてローユーザデータを閲覧およびアノテーションでき、および/または音声でアノテーション画像における操作進捗レベルを入力できる。
上記の例は、単に説明の目的で提供されるものである。以下は他の図面および説明を参照して各コンポーネントの機能の更なる詳細を説明する。本開示に記載の1つまたは複数のコンポーネントは、他のコンポーネントと独立して使用され得ることが理解される。
図2は一部の実施例による、洗濯機に積載された洗濯される衣類の検出画像に基づいて洗濯循環設定を自動的に選択するプロセス200の模式図である。便宜上、プロセス200は、洗濯機のコンピューティングシステム(例えば、図1Cにおける電器140’のコンピューティングシステム130’)によって実行されると説明される。
ユーザーが手動で洗濯機の洗濯循環設定を選択することに依存せず、洗濯機のコンピューティングシステムは、画像の検出および分類モデルを使用して衣類のタイプを識別し、適切な洗濯機の洗濯循環設定を自動的に選択する。一部の実施例において、自動的に選択される洗濯機循環設定は、積載衣服の検出された特性(例えば、織物のテクスチャ、色、寸法、タイプなど)に基づいたものであり、且つ洗濯中の衣類に対する損傷(例えば、色あせ、裂け目、引張りなど)を最小限に抑えるように設定される。一部の実施例において、洗濯機への損傷を防ぐために自動的に選択される洗濯循環を設定する。例えば、コンピューティングシステムが金属ジッパーのような金属部品を備えた衣類を検出した場合、コンピューティングシステムは、金属部品が洗濯機のドラムを傷つけないように、タンブリングが低減される洗濯循環を選択することができる。一部の実施例において、コンピューティングシステムによって、ユーザが洗濯目標の優先度を区別させることができ(例えば、衣類損傷の防止、洗浄結果の最大化、洗濯時間の最小化等)、かつコンピューティングシステムがユーザの配置に応じて洗濯循環を自動的に選択することができる。ユーザーは、洗濯機循環設定の自動選択を無効にして、代わりに手動で洗濯機循環設定を選択することができる。
自動で洗濯循環を選択するために、洗濯機のコンピューティングシステムは、まず洗濯機内に積載される洗濯される衣類の複数の画像を取得する(202)。一部の実施例において、一つまたは複数のカメラ(例えば、図1Bのセンサ141または142)は、洗濯機の中に取り付けられ、かつカメラの視野が洗濯機のドラムを覆う。例えば、一つまたは複数のカメラは、洗濯機の扉または窓に取り付けられてもよい。一部の実施例において、積載された衣類のさらなる代表的で完整なピクチャーを取得するために、洗濯機のドラムは、各画像キャプチャセッションの間にわずかに(例えば、半回転)タンブリング回転して、積載された洗濯される衣類を展開させる。一部の実施例において、洗濯機のドラムがタンブリング回転しているとき、一つまたは複数のカメラが積載された洗濯される衣類のビデオを撮影する。一部の実施例において、洗濯循環の対応する設定に基づいて洗濯循環を正式に開始する前に、コンピューティングシステムは、洗濯機にマシンドラムの回転を開始させるように指示し、マシンドラム内の衣類アイテムの一連の画像を取得し、それらの画像の各画像を使用して対象の検出および分類に用いられる入力画像とする。各入力画像からの推定結果を組み合わせることによって、複数の入力画像からの最終的な推定結果を取得する。例えば、一部の実施例において、複数の画像における一つの入力画像からの推定結果が、識別された衣類アイテムの中に最も厳しい設定要求を持つ特定のタイプの衣類アイテムが存在することを指示すれば、機器設定はその特定のタイプの衣類アイテムの存在に基づいて変更される。一部の実施例において、機械設定の変更をトリガーするために、複数の入力画像における閾値数の入力画像において特定のタイプの衣類アイテムを検出する必要がある。
1つまたは複数のカメラが積載された洗濯物の画像に対する撮影を完成すると、コンピューティングシステムは、画像を画像処理モジュール(例えば、図1Cにおける画像処理モジュール154’)に送信して事前処理を行う(203)。事前処理中に、非構造化画像の元のデータは、変換してから画像処理モデルに送られる。事前処理は、トレーニング速度および分類精度の向上に役立つ。例示的な事前処理技術は、縦横比の正規化、画像のスケーリング、平均値の正規化、データの正規化、次元縮退、データの強調などを含む。
次に、事前処理画像は、1つまたは複数の画像処理モデルに送信されて特徴検出に用いられる(204)。一部の実施例において、画像処理モデルは、洗濯機のコンピューティングシステムに記憶され、且つ洗濯機のコンピューティングシステムにおいてローカルで実行される。または、画像処理モデルは、リモートサーバ(例えば、図1Aにおける推定結果セットサーバ129)に記憶されてリモートサーバにおいて実行され、当該リモートサーバはネットワーク(例えば、図1Aにおけるネットワーク190)を介して洗濯機のコンピューティングシステムに接続される。画像処理モデルは、ネットワークを介して洗濯機の作業年限が切れるまでに更新し続けることができる。
一部の実施例において、画像処理モデルは、事前処理された洗濯される衣類の画像を入力として受信し、積載された洗濯される衣類のうちの一つまたは複数の衣類の検出された特徴を出力する。画像処理モデルは、一つまたは複数の画像検出アルゴリズム、例えば、畳み込みニューラルネットワーク(CNN)、領域に基づくCNN(R-CNN)、高速及びより高速なR-CNN、領域に基づく完全畳み込みネットワーク(R-FCN)、You-Only-Look-Once(YOLO)、シングル検出器(SSD)等を含んでもよい。トレーニング画像処理モデルに関連する資源コストが高いため、一部の実施例において、画像処理モデルはまずリモートコンピューティングシステム(例えば、図1Aにおけるトレーニングモデルサーバ122)においてトレーニングされ、かつネットワークを介して更新されて洗濯機のローカルコンピューティングシステムに送信される。
一部の実施例において、各画像処理モデルは、1種のタイプの特徴を検出するように配置される。例えば、個別の画像処理モデルは、衣類のタイプ(206)、積載のサイズ(208)、衣類の色(210)、泡(212)、テクスチャのレベル(214)等を検出するように配置されてもよい。一部の実施例において、画像処理モデルは、特徴検出のために洗濯機に取り付けられたセンサから付加の入力を受信する。例えば、負荷重量を測定するために1つまたは複数の体重計を洗濯機に取り付けてもよい。一部の実施例において、各画像処理モデルは、バイカテゴリ分類分類器である。例えば、画像処理モデルは、画像が「シャツ」を含むかどうかを決定するように構成されてもよく、または画像処理モデルは、画像が「赤い服」を含むかどうかを決定するように構成されてもよい。
画像処理モデルを使用して衣類のタイプを検出することに関連する問題は、ある衣類のタイプが誤分類されやすくて、それにより、画像処理モデルに偽陽性結果(または、代わりに偽陰性結果)を常に発生させてしまうことである。これは、衣類がドラム内で捻られて絡んでいることが多いことで、その全部の特徴が完全に隠蔽されているためと考えられる。例えば、絡んだりねじったりしたシャツはブラジャーに非常に似ているように見える可能性があって、画像処理モデルは、シャツがブラジャー(偽陽性)であると誤って決定する可能性がある。対象の検出および分類の精度を高める(例えば、偽陽性の結果の数を減らす)とともに、画像処理モデルによってリコールを維持するために(例えば、偽陰性の結果の数を増やさない)、トレーニングサーバ(例えば、図1Aのトレーニングモデルサーバ122)において修正された機器学習トレーニングプロセスを実現させる。図3を参照して修正された機器学習トレーニングプロセスを詳しく説明した。
画像処理モデルが積載された洗濯される衣類を検出して分類した後、洗濯機のコンピューティングシステムは、検出結果を対応する洗濯循環にマッピングする(216)。例示的な洗濯循環は、通常の循環(例えば、綿系衣類に用いられる)、パーマネントプレス循環(例えば、カラー系衣類に用いられる)、繊細循環(例えば、細粒系衣類に用いられる)等を含む。各循環は、異なる水温、タンブリング速度、回転速度、および洗濯時間に関連する。
検出結果から対応する洗濯循環設定へのマッピングは事前配置されたものであり、後にリモートサーバ(例えば、図1Bのコンピューティングシステム130)を介して更新されてもよい。例えば、マッピングは、1つ又は複数の洗濯ターゲット、例えば、衣類の寿命の維持、洗濯時間の短縮、汚れの除去などを最大化するように構成されてもよい。マッピングは、検出される衣類の素材、テクスチャ、サイズ、数、および色に基づいたものであってもよい。例えば、コンピューティングシステムが洗濯される衣類の負荷が羊毛からなる鮮やかな衣類が含まれていることを検出した場合、穏やかな洗濯循環を使用することができる。
図2は、画像処理モジュールからのターゲット検出結果および分類結果に基づいて機器設定を如何に制御する例であり、当該ターゲット検出および分類結果が本開示に説明されたマルチパストレーニングプロセスによって生成されたものである。一部の実施例により、他のタイプの機器は、機器の各種の動作を可変的な設定で制御するために本開示に記載された方法を選択可能に使用し、他のタイプの機器は、例えば、乾燥機ドラムの画像において識別される異なるタイプの衣類アイテムに対する異なる乾燥設定を有する衣類乾燥機、オーブンチャンバーの画像において識別される異なるタイプの食物アイテムに対する異なる調理設定を有するオーブン、ディッシュラックの画像における異なるタイプのお皿および容器に対する異なる洗濯設定を有する食器洗い機等を含む。
図3は一部の実施例によるマルチパストレーニングプロセスにおいて画像処理モデルをトレーニングすることに用いられるプロセス300の模式図である。便宜上、プロセス300は、リモートサーバ(例えば、図1Aのトレーニングモデルサーバ122)によって実行されるものとして説明される。プロセス300は、ローカルコンピューティングシステム(例えば、図1Cのコンピューティングシステム130’)によって記憶および使用されるトレーニングされた画像処理モデルを出力する。1つの代替実施例において、プロセス300は、ローカルコンピューティングシステムによって実行され、同じローカルコンピューティングシステムによって記憶および使用されるトレーニングされた画像処理モデルを出力する。プロセス300は、一般化された画像処理モデルトレーニングプロセスであり、図2で説明したようなトレーニングが衣類のタイプを検出するに用いられる画像処理モデルには特定されない。
プロセス300は、少なくとも第1トレーニングパス301および第2トレーニングパス303を含むマルチパスプロセスである。従来のシングルパス画像処理モデルトレーニングプロセス(例えば、CNNにおける逆方向伝播)に比べて、プロセス300は、まずトレーニングデータセットにおける「困難」データポイント(例えば、画像処理モデルが偽陽性推定結果を出力する原因となる1セットのデータポイント)を識別し、次に画像処理モデルに付加の出力タイプを追加してこれらの困難データポイントの推定結果を説明し、それによって、推定の精度を向上させる。結果として、プロセス300は、バイカテゴリ分類モデル(例えば、第1画像処理モデル306)をマルチ分類モデル(例えば、第2画像処理モデル306)に効果的に変換する。
第1のトレーニングパス301の期間中に、コンピューティングシステムは、第1トレーニングセッション304において第1セットのトレーニングデータ302を用いて第1画像処理モデル306を生成する。第1セットのトレーニングデータ302は、画像処理モデルトレーニングに適用されるアノテーションデータを含む。例えば、第1セットのトレーニングデータ302は、衣類タイプ(例えば、家電製品が洗濯機である場合)がマークされ、または食物アイテムタイプ(例えば、家電製品がスマートオーブン又は電子レンジである場合)がマークされた1セットの画像であってもよい。一部の実施例において、一つの画像は、異なるデータタイプを有する複数のデータを含む。例えば、画像は、異なるタイプの複数の衣類を含んでもよい。このような場合、画像は、第1トレーニングセッション304に用いられる前に、複数のサブ画像に分割され、各サブ画像が一つのデータタイプ(例えば、衣類タイプ)を有する。
第1トレーニングセッション304は、データ(例えば、洗濯機内に積載された衣服の画像)を1つまたは複数の事前定義された出力カテゴリ(例えば、衣服タイプ)に適合させる画像処理モデルを出力する。画像処理モデルの例は、線形回帰、ロジク回帰、サポートベクターマシン、ニューラルネットワークなどが挙げられる。第1トレーニングセッション304の期間中に、画像処理モデルパラメータ(例えば、ニューラルネットワークいおける重み付き接続ノード)は、事前定義された損失関数を最小化するために微調整され(例えば、勾配下げ方法を用いる)、ここで、損失関数は、画像処理モデルの予測データタイプと実際のデータタイプとの一致度を測定する。
第1トレーニングセッション304が終了するとき、第1画像処理モデル306を生成する。次に、コンピューティングシステムは、第1検証セッション308において第1画像処理モデル306をテストする。第1検証セッション308の期間中に、第1画像処理モデル306は1セットの検証データを受信して対応するデータタイプを予測する。一部の実施例において、コンピューティングシステムは、第1セットのトレーニングデータ302を検証データとして第1画像処理モデル306に供給する。あるいは、コンピューティングシステムは、第1セットのトレーニングデータ302と異なる1セットのアノテーションデータセットを検証データとして使用する。
一部の実施例において、第1画像処理モデル306は、バイカテゴリ分類予測機(例えば、入力画像が特定のタイプの衣類を含むかどうかを決定するための出力ノードを有するニューラルネットワーク)である。バイカテゴリ分類画像処理モデル306からの出力(予測ともいう)が実際の入力データタイプと比べと、(1)真陽性結果314、(2)真陰性結果316、(3)偽陽性結果310、及び(4)偽陰性結果312の4つのカテゴリのうちの1つに分類されることができる。
真陽性結果314は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属したものとして正しく分類したことを示す(例えば、画像がシャツを含むと予測し、且つ画像が実際にシャツを含む)。
真陰性結果316は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属さないものとして正しく分類したことを示す(例えば、画像がシャツを含まないと予測し、且つ画像が靴下のみを含む)。
偽陽性結果310は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属したものとして誤って分類したことを示す(例えば、画像がシャツを含むと予測したが、画像が実際に靴下のみを含む)。
偽陰性結果312は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属さないものとして誤って分類したことを示す(例えば、画像がシャツを含まないと予測したが、画像が実際にシャツを含む)。
一部の実施例において、あるサンプルセットは誤分類されやすく、かつ第1画像処理モデル306に偽陽性結果を常に発生させてしまうことである。例えば、洗濯機の内部から撮影した画像に基づいて衣類タイプを検出するコンテキストには、シャツのようなねじれた衣類は常にブラジャーとして誤って検出されることが多い。そのため、ブラジャーを検出するように構成された画像処理モデルは、ねじれたシャツのみを有する画像が提供される場合に偽陽性予測結果を生成する可能性が高い。
第1画像処理モデル306の偽陽性結果の数を低減する(例えば、モデルの精度を向上させるために)とともに、偽陰性結果の数を増加しない(例えば、モデルのリコール率を維持または低減する)ために、コンピューティングシステムは、第2トレーニングパス303を実行して、第1画像処理モデル306に基づいて第2画像処理モデル328を生成する。第2トレーニングパス303の期間中に、コンピューティングシステムは、第1セットのトレーニングデータから第1画像処理モデル306に第1検証セッション308において偽陽性結果を発生させてしまう1セットのデータを識別して、識別された当該セットのデータに対して付加のマークを適用する。例えば、ねじれたシャツを含む画像の最初のデータタイプは「シャツ」である。当該画像により第1画像処理モデル306に偽陽性結果を発生させたことによって、コンピューティングシステムは、シャツのデータタイプを第2データタイプに置き換え、当該第2データタイプはシャツデータタイプが「擬似偽陽性カテゴリ318」(例えば、「偽シャツ」)に属することを示す。
一部の実施例において、トレーニングデータセットが画像データを含む場合、トレーニングのために用いられる新しく作成される擬似偽陽性データの数を増やすために、コンピューティングシステムは、識別される擬似偽陽性画像に対して画像補強322を実行する。データが画像データではない場合、他のタイプのデータ補強を実行し、またはデータ補強をスキップしてもよい。
第1画像処理モデル306に偽陽性結果を発生させてしまうデータに対して擬似偽陽性タイプラベル318を適用して、(当該データが画像データを含む場合)画像補強322を実行した後、コンピューティングシステムは、第1セットのトレーニングデータ302、および新しく生成された偽陽性データタイプを有するデータを含むことによって第2セットのトレーニングデータ324を形成する。
次に、コンピューティングシステムは、第2セットのトレーニングデータ324を使用して、第2トレーニングセッション326において第1画像処理モデル306を改めてトレーニングして、第2画像処理モデル328を生成する。第1画像処理モデル306と比べ、第2画像処理モデル328は、擬似偽陽性データタイプに対応する付加の出力を有する。その結果、第2画像処理モデル328に対するトレーニングおよび推定期間中に、擬似偽陽性ラベルを有するデータは、個別のカテゴリに分類される。例えば、第1画像処理モデルおよび第2画像処理モデルは、洗濯機におけるブラジャーを検出するように構成されてもよい。上述のように、あるタイプの衣類は、絡み合ったりねじれたりすると、部分的にブラジャーのように見えてしまい、画像処理モデルが偽陽性の結果を出力してしまうことがある。プロセス300によって、第2画像処理モデル328は、現在、画像を受信して画像における対象を(1)ブラッジャー、(2)ブラッジャーに非常に似てる衣類(例えば、画像処理モデル306に偽陽性結果を出力させた衣類)、および(3)他のタイプの衣類(例えば、靴下、ジーンズ、および第1画像処理モデルによってブラッジャーではないと正しく予測された他の衣類)に分類するように構成される。そのため、プロセス300は画像処理モデルの出力に対して粒状性を増加させて、従って、そのリコール率を保つとともに画像処理モデルの精度を増加させる。
一部の実施例において、第1の検証セッション308の期間中に第1画像処理モデル306に偽陰性結果310を出力させる原因となった1セットのデータを使用する代わりに、コンピューティングシステムは、第1画像処理モデル306に偽陽性結果312を出力させる原因となった1セットのデータを付加的にまたは選択可能に使用する。
対象タイプを特定するための得られた第2画像処理モデル328は、入力画像を処理して、対応するタイプの対象を検出する推定結果を生成するために用いられる。一部の実施例において、機器の特定の操作に対する機器設定の選択に関する(例えば、洗濯セッションの洗濯循環)各種の対象タイプ(例えば、デリケート、タオル、寝具、赤い衣類アイテムなど)について、図3で説明されたマルチパスモデルトレーニングは、改善された画像処理モデルを生成するために用いられ、対象タイプのアイテムを識別するために用いられてもよく、かつ各操作に対して、一つ以上の改善された画像処理モデル(例えば、繊細な衣類アイテム及び赤いアイテムを同時に検出するための改善された画像処理モデル)を活性化して、これらの改善された複数の画像処理モデルからの結果を組み合わせて(例えば、これらの設定への影響の事前設定された優先度などに基づいて)、特定の操作に対する設定値を生成する。
図4は一部の実施例による図3で説明されるマルチパストレーニングプロセスにおいて生成される画像処理モデルの模式図であり、そのうち、更新されるモデルがリコール率を保つとともに対象の検出及びバイカテゴリ分類の精度を向上させる。図4にニューラルネットワークが示されたが、いくつかの選択可能な実施例において、予測の精度を向上させるために同一の方式で他のタイプの画像処理モデルを改めて配置してもよい。オリジナルモデル402は、入力層404と、一つまたは複数の隠れ層406と、出力層408とを含む。出力層408は、予測された「陽性結果」及び「陰性結果」に対応する二つのノード(例えば、バイカテゴリ分類)を含む。例えば、オリジナルモデル402は、図3で説明されたような第1画像処理モデル306であってもよい。
図3で説明されたような最トレーニングのプロセスの後で、オリジナルモデル402は、更新されたモデル403に更新される。オリジナルモデル402と比べ、更新されたモデル403は、1つの余裕な出力ノード、即ち偽カテゴリ出力410を有する。上記のように、偽カテゴリ出力410は、データポイントが誤分類されやすい「困難サンプル」であることにより、例えば、オリジナルモデル402に偽陽性または偽陰性の結果を出力させることを示す。
図5は、一部の実施例による、画像検出と、物体検出モデルのマルチパストレーニングによって生成されたバイカテゴリ分類結果とに基づいて機器設定の自動選択を実行する方法500のフローチャートである。便宜上、方法500は、ネットワークを介して接続された複数のサーバを含むコンピューティングシステムによって実行されるものとして説明され、コンピューティングシステムの各サーバは、特定のタスクの実行に専用される。例えば、コンピューティングシステムは、トレーニングモデルサーバ(例えば、図1Aのトレーニングモデルサーバ122)および電器サーバ(例えば、図1Cのコンピューティングシステム130’)を含んでもよい。一部の実施例において、機器は、洗濯機、オーブン、電子レンジ、冷蔵庫、または他の家電製品である。
第一ステップとして、コンピューティングシステムは(例えば、トレーニングモデルサーバを介して)第1画像処理モデルを受信し、当該第1画像処理モデルは、対応する入力画像を、前記第1タイプの少なくとも一つの対象が含まれる画像に対する前記第1カテゴリと、前記第1タイプの少なくとも一つの対象が含まれない画像に対する前記第2カテゴリと、に分類するようにトレーニングされる(502)。そのため、第1画像処理モデルは、画像が第1カテゴリまたは第2カテゴリに属すると分類されるバイカテゴリ分類器である。例えば、第1画像処理モデルは、衣類の画像(例えば、洗濯機から撮影した洗濯される衣類画像)を、衣類のタイプ(例えば、シャツ)が含まれるもの、または衣類のタイプが含まれないもの(例えば、シャツなし)に分類するように設計されている。一部の実施例において、第1画像処理モデルは、前に第1セットのトレーニングデータを使用してリモートサーバにおいてトレーニングされるニューラルネットワークであり、第1セットのトレーニングデータは、ラベル対象が付けられた画像を含む。
第1画像処理モデルを受信した後、コンピューティングシステムは、第1画像処理モデルによって出力された複数の推定結果から偽陽性結果としての推定結果の第1サブセットを識別し、当該偽陽性結果は、第1タイプの少なくとも一つの対象が含まれない第1セットの画像を第1タイプの少なくとも一つの対象が含まれる画像に対する前記第1カテゴリに分類するものである(504)。一部の実施例において、コンピューティングシステムの画像処理モジュール(例えば、図1Cの画像処理モジュール154’)は、推定タスクを実行するように配置される。一部の実施例において、複数の推定結果を生成するために、コンピューティングシステムは、(画像処理モジュールを介して)第1セットのトレーニングデータ(例えば、第1画像処理モデルを生成するために用いられたトレーニングデータセット)、または第1セットのトレーニングデータと異なる第1セットの推定データ、または両方の組み合わせを対照して第1画像処理モデルを検証する。第1セットのトレーニングデータ及び第1セットの推定データは、いずれも対象タイプがマークされた画像を含む(例えば、「シャツ」、「靴下」、「ワンピース」などを含むとマークされる画像)。例えば、第1セットの画像における画像は、衣類タイプを含むとマークされ、第1画像処理モデルは、画像が「シャツ」を含むかどうかを検出するように設計される。そのため、推定結果の第1サブセットには、如何なるシャツを含んでもないがシャツを含むと第1画像処理モデルによって誤って分類された画像が含まれる。
次に、コンピューティングシステムは、第1セットの画像から第1セットの新たなトレーニングデータを生成することであって、第1セットの画像における対応画像を補強して第1の対応する複数の画像を取得することと、第1の対応する複数の画像が第1カテゴリおよび第2カテゴリと異なる偽第1カテゴリの少なくとも一つの対象を含むとマークされることとを含むことを実行する(506)。一部の実施例において、コンピューティングシステムは、トレーニングセットサーバ(例えば、図1Aのトレーニングセットサーバ120)を介して第1セットの新たなトレーニングデータを生成する。一部の実施例において、コンピューティングシステムは、画像歪み、反転、画像輝度調整、画像拡大などによって対応する画像のバリエーションを作成することにより、第1セットの画像における対応画像を補強する。画像補強によってトレーニングデータセットのサイズを拡大することにより、画像処理モデルをよりよくトレーニングして対象の検出及び分類を実行することができる。例えば、第1セットの画像における画像は、衣類タイプを含むとマークされ、第1画像処理モデルは、画像が「シャツ」を含むかどうかを検出するように設計されており、シャツが含まれない第1セットの画像のサブセットが、1つ前の推定スデップ期間中においてシャツを含むと誤って分類された。その結果、第1セットの画像のサブセットにおける画像は、いかなる以前の衣類ラベルと異なる特別なカテゴリラベル、例えば、「偽シャツ」を受け取ることになる。このカテゴリラベルは、これらの画像が誤分類されやすい対象を含むことを示す(第1画像処理モデルに偽陽性結果を発生させてしまう)。一部の実施例において、コンピューティングシステムは、トレーニングセットサーバを介して第1セットの画像のサブセットの旧いラベルを除去する。その結果、これらの画像は、衣類のタイプを含めず、新たな「偽カテゴリ」ラベルのみを含むとマークされる。
第1セットの新たなトレーニングデータを取得した後、コンピューティングシステムは、トレーニングモデルサーバ(例えば、図1Aのトレーニングモデルサーバ122)を介して少なくとも第1セットの新たなトレーニングデータを含むトレーニングデータセットによって第2画像処理モデルをトレーニングすることにより、対応する入力画像を、第1タイプの少なくとも一つの対象が含まれる画像に対する第1カテゴリと、第1タイプの少なくとも一つの対象が含まれない画像に対する第2カテゴリと、第1画像処理モデルによって第1カテゴリと誤分類されやすい対象が含まれる画像に対する偽第1カテゴリと、に分類する(508)。そのため、バイカテゴリ分類を実行するように設計される第1画像処理モデルと比べると、第2画像処理モデルは、画像が偽カテゴリの対象を含むと分類されること(例えば、第1画像処理モデルに偽陽性結果の対象を出力させること)に対応する付加の出力を有する。例えば、トレーニングデータセットは、「シャツ」を含むとマークされた画像、「シャツ」を含むとマークされていない画像(例えば、「靴下」、「ワンピース」などのみを含む画像)、及び「偽シャツ」を含むとマークされた画像を含んでもよい。注意すべきのは、第2トレーニングモデルにおける第1カテゴリ及び第2カテゴリは、第1トレーニングモデルにおける第1カテゴリ及び第2カテゴリと異なっており、これは、偽第1カテゴリに属した画像(例えば、第1トレーニングモデルに基づいて、第1カテゴリに含まれやすいものであるが実際に第2カテゴリに属した画像)を第1カテゴリ及び第2カテゴリに含まれないように第2トレーニングモデルがトレーニングされているためである。
最後に、コンピューティングシステムは電器サーバ(例えば、図1Cの電器機能制御ユニット153”’)を介して、第1のマシンによってキャプチャされた第1入力画像の第1推定結果に基づいて、第1マシンの機器設定を修正し、ここで、第1推定結果は、前記第2画像処理モデルによって生成され、かつ前記第1カテゴリに対応する(510)。例えば、コンピューティングシステムが洗濯機に積載された洗濯される衣類の画像が特定のタイプの衣類(例えば、シャツ)を含むと決定した場合、コンピューティングシステムは、検出された衣類タイプに基づいて洗濯循環を選択して、衣類への損傷を最小限に抑え、洗浄結果を最大化することができる。
一部の実施例において、第1マシンが前記第1入力画像におけるキャプチャされた対象に対して第1操作を実行する前に、コンピューティングシステムは、第1マシンにおいて第1入力画像をキャプチャし、ここで、機器設定は第1マシンによって実行される第1操作の設定である。例えば、第1マシンは洗濯機であり、第1操作は洗濯操作であり、機器設定は特定の洗濯循環設定である。洗濯機は、操作の前に、洗濯機に積載された洗濯される衣類の画像を撮影して衣類のタイプを決定し、適切な洗濯循環設定を選択することにより、それに応じて洗濯機を操作する。
一部の実施例において、複数の画像処理モデルが存在して、コンピューティングシステムは、異なる画像処理モデルを使用して異なるタイプの対象を検出して、異なる設定を適用する。コンピューティングシステムは、第4画像処理モデルをトレーニングして、対応する入力画像を第3カテゴリ、第4カテゴリまたは偽第3カテゴリに分類することに用いられ、当該第3カテゴリは、第1タイプと異なる第2タイプの少なくとも一つの対象が含まれる画像に対するものであり、当該第4カテゴリは第2タイプの少なくとも一つの対象が含まれない画像に対するものであり、当該偽第3カテゴリは第3画像処理モデルによって第3カテゴリと誤分類しやすい対象が含まれる画像に対するものであり、当該第3画像処理モデルは対応する入力画像を第3カテゴリ及び第4カテゴリだけに分類するようにトレーニングされ、且つ第1マシンによってキャプチャされた第1入力画像の第2推定結果に基づいて、第1マシンの異なる機器設定を修正し、ここで、第2推定結果は、第4画像処理モデルによって生成され、かつ第3カテゴリに対応する。例えば、洗濯機は1つの画像処理モデルを使用してシャツを分類して、もう一つの画像処理モデルを使用してジーンズを検出してもよい。シャツ及びジーンズの画像処理モデルは、いずれも以上で説明されたマルチパストレーニングプロセスを使用して改善されることができる。次に、コンピューティングシステムは、シャツとジーンズの存在の有無で洗濯循環設定を選択する。例えば、洗濯される衣類にシャツとジーンズが同時に存在する場合は、シャツのみの場合またはジーンズのみの場合より洗濯時間が長くなる可能性がある。
一部の実施例において、選択可能にまたは代替的に、補強された偽陰性サンプルはマークされ、新たなトレーニングデータにおける真陽性サンプルとマージする。その結果、新たな画像処理モデルは、偽陰性サンプルとして誤分類されやすいサンプルを分類するようにトレーニングされる。コンピューティングシステムは、第1画像処理モデルによって出力された複数の推定結果から推定結果の第2サブセットを識別し、当該推定結果の第2サブセットは偽陰性結果であり、当該偽陰性結果は、第1タイプの少なくとも1つの対象が含まれる第2セットの画像を第1タイプの少なくとも1つの対象が含まれない第2カテゴリに分類するものである。例えば、推定結果の第2サブセットは、シャツを含むが第1画像処理モデルによってシャツを含まないと分類される画像を含んでもよい。
推定結果の第2サブセットに基づいて、コンピューティングシステムは、第2セットの画像から第2セットの新たなトレーニングデータを生成することであって、第2セットの画像における対応画像を補強して第2の対応する複数の画像を取得することと、第2の対応する複数の画像を第1カテゴリの画像にマークすることとを含むこと、を実行する。例えば、コンピューティングシステムは、上記のような「偽カテゴリ」を作成するというのタスクに類似するタスクを実行してもよい。
次に、コンピューティングシステムは、第2の対応する複数の画像をトレーニングデータセットに追加して、第1画像処理モデルによって第1カテゴリに正しく分類された画像とともに、第1カテゴリに対応するトレーニング画像とする。例えば、シャツを検出するように設計された画像処理モデルの場合、トレーニングデータセットには(1)シャツを含む画像、(2)シャツ(「偽シャツ」)として誤分類されやすい対象を含む画像、(3)シャツでもなく、「偽シャツ」でもない対象を含む画像、及び(4)シャツであるがシャツではないと誤分類されやすい対象を含む画像の4つのタイプのデータが含まれる。
一部の実施例において、偽陽性結果がトレーニング期間で発生するとき、ユーザが偽陽性結果を識別する。従って、従来のモデルを有するネットワーク接続機器は、アップグレードの前にトレーニングデータセットに対して貢献することができる。コンピューティングシステムは、ユーザの入力を収集して、当該ユーザの入力は、第2のマシンが使用する第1画像処理モデルのコピーによって生成される付加の推定結果を偽陽性結果と識別し、及び第2のマシンにおいてキャプチャされた付加の推定結果に対応する画像をトレーニングデータセットに追加して、第2画像処理モデルをトレーニングする。
図6は一部の実施例による例示的な家電製品600の図である。例えば、様々な実施例において、家電製品600は、電器18、112、114、140、140’、200、201、202、203、204として用いられることができる。家電製品600は、一つまたは複数の処理ユニット(CPU)602、一つまたは複数のネットワークインターフェース604、メモリ606及びこれらのコンポーネント(時にはチップセットと称する)を相互接続するために用いられる一つまたは複数の通信バス608を含む。家電製品600は、ユーザインターフェース610をさらに含む。ユーザインターフェース610は、メディアコンテンツの提示を可能にする1つまたは複数の出力デバイス612を含み、前記出力デバイスが1つまたは複数のスピーカーおよび/または1つまたは複数の視覚ディスプレイを含む。ユーザインターフェース610は、1つまたは複数の入力デバイス614をさらに含み、ユーザの入力を容易にするユーザインターフェースコンポーネント、例えば、キーボード、マウス、音声コマンド入力ユニットまたはマイク、タッチスクリーンディスプレイ、タッチセンシティブ入力パッド、ジェスチャーキャプチャカメラ、またはその他の入力ボタンやコントタンブリングなどのを含む。一部の実施例において、家電600は、家電製品600の操作環境情報を感知するセンサ(例えば、センサ141、142)をさらに含む。センサには、1つ又は複数の熱センサ、光センサ、1つ又は複数のカメラ、湿度センサ、1つ又は複数の運動センサ、1つ又は複数の生物学センサ(例えば、皮膚電気抵抗センサ、パルス酸素計など)、重量センサ、分光器、および他のセンサが含まれるが、これらに限定されない。さらに、家電製品600は、家電製品操作ユニット626(例えば、電気、誘導、ガス、放射などに基づく加熱装置)を含む。メモリ606は、不揮発性メモリ、例えば、1つまたは複数の磁気ディスク記憶装置、1つまたは複数の光ディスク記憶装置、1つまたは複数のフラッシュメモリデバイス、または1つまたは複数の他の不揮発性ソリッドステートストレージデバイスなどを含む。選択可能に、メモリ606は、1つまたは複数の処理ユニット602から遠隔に配置された1つまたは複数のストレージデバイスを含む。メモリ606、または選択可能に、メモリ606における不揮発性メモリは、非一時的なコンピュータ可読記憶媒体を含む。一部の実施例において、メモリ606、またはメモリ606の非一時的なコンピュータ可読記憶媒体は、
オペレーティングシステム616であって、様々な基本システムサービスを処理ためのプロセス及びハードウェア関連タスクを実行するためのプロセスを含むオペレーティングシステム616と、
ネットワーク通信モジュール618であって、1つまたは複数のネットワークインターフェース604(有線または無線)を介して外部サービスに接続するように構成されるネットワーク通信モジュール618と、
提示モジュール620であって、情報の提示を実現するように構成される提示モジュール620と、
入力処理モジュール622であって、1つまたは複数の入力デバイス614のうちの1つの入力デバイスから、1つまたは複数のユーザ入力またはインタラクションを検出し、検出された入力またはインタラクションを解釈するように構成される入力処理モジュール622と、。
家電製品制御ユニット624であって、家電製品600を制御し、本開示に記載された家電製品140または140’のモジュールを含むがこれらに限定されない家電製品制御ユニット624と、
のプログラム、モジュール、およびデータ構造、またはそのサブセットやスーパーセットを記憶する。
上記のように識別された各素子は、上記1つまたは複数のメモリデバイスに記憶され、且つ上記機能を実行するための命令セットに対応してもよい。上記で識別されたモジュールまたはプログラム(すなわち、命令セット)は、単独のソフトウェアプログラム、プロセス、モジュール、またはデータ構造として実現される必要がないので、これらのモジュールの各サブセットが各実施例において組み合わせ又は他の方式で改めて配列されてもよい。一部の実施例において、選択可能に、メモリ606は、上記で識別されたモジュールおよびデータ構造のサブセットを記憶する。さらに、選択可能に、メモリ606は、上記で説明されていない付加のモジュールおよびデータ構造を記憶する。
上記は特定の実施例を説明したが、本願をこれらの特定の実施例に限定することを意図するものではないことが理解されるべきである。逆に、本願は、提示された請求項の精神及び範囲内の代替、修正および対等物を含む。本明細書に説明されるテーマに対する完全な理解を提供するために具体的な詳細が多く記載されている。しかしこれらの特定の詳細なしで本テーマを他の実施例に実施され得ることは当業者には明らかである、本開示は不要に当実施例の各方面を曖昧にしないように、周知の方法、プロセス、コンポーネント、および回路を詳しく説明していない。
上記のように識別された各素子は、前記の1つまたは複数のメモリデバイスに記憶され、上記機能を実行するための命令セットに対応してもよい。上記で識別されたモジュールまたはプログラム(すなわち、命令セット)は、単一のソフトウェアプログラム、プロセス、モジュール、またはデータ構造として実現される必要がないので、これらのモジュールの各サブセットが各実施例において組み合わせ又は他の方式で改めて配置されてもよい。一部の実施例において、選択可能に、メモリ606は、上記で識別されたモジュールおよびデータ構造のサブセットを記憶する。さらに、選択可能に、メモリ606は、上記で説明されていない付加のモジュールおよびデータ構造を記憶する。
(関連出願の相互参照)
本願は、2019年10月18日にアメリカ特許局に提出された、出願番号が16/657,975であるアメリカ特許出願に基づいて優先権を主張し、その全内容が参照として本願に組み込まれる。
本願の実施例は、画像処理分野に関し、特に改善の画像処理モデルを用いて対象を検出して、検出された対象に基づいて機器を自動的に操作するシステム及び方法に関する。
例えば、家電製品の機器は、一般的に異なる事前定義された操作設定を有する。例えば、洗濯機は複数種の洗濯循環設定を有し、複数種の洗濯循環設定は、異なる水温、タンブリング速度、回転速度等を有する。電子レンジは複数種の調理設定を有し、複数種の調理設定は異なるマイクロ波パワーレベル及び調理時間を有する。適切な設定を選択することは、機器の性能を最適化させるこよにとって重要である。例えば、選択したい衣類に対して適切な洗濯循環設定を選択することは、衣類の損傷(例えば、引張り、収縮または変色)の防止及び最適な洗浄効果の実現にとって非常に重要である。いくつかの場合において、機器は画像処理モデルに依存して操作される一つまたは複数の対象(または対象のタイプ)(例えば、洗濯機の衣類のタイプ、電子レンジの食物のタイプ)を検出し、かつ検出された一つまたは複数の対象(または対象のタイプ)に基づいて機器操作設定を自動的に選択する。
例えば、畳み込みニューラルネットワーク(convolutionalneuralnetworks、CNN)及びその変体の機器学習モデルは強い画像処理モデルであり、対象検出タスクに広く適用されている。しかしながら、機器学習モデルの性能が悪くなりがちであるので、各種の機器の操作対象としての関連対象に対する分類及び検出が不正確になる。
これらの原因に基づいて、対象の検出及び分類に用いられる画像処理モデルを向上させることが強く求められている。
背景技術で述べられたように、例えば、畳み込みニューラルネットワーク(CNN)及びその変体の機器学習モデルは強い画像処理モデルであり、対象検出タスクに広く適用されている。しかしながら、誤分類されやすい対象のカテゴリ、例えば対象の検出/分類アルゴリズムの観点で陽性サンプルと非常に類似するように見られる「難」陰性サンプル(偽陽性)、または陰性サンプルと非常に類似するように見られる「難」陽性サンプル(偽陰性)が存在するので、高精度(例えば、偽陽性率が低い)及び高リコール率(偽陰性率が低い)という両者で対象検出を行うのは挑戦的である。例えば、衣類が洗濯機のドラムに積載されると、絡み合ったり、ねじれたり、ひいては結び目ができたりすることが多い。結果的に、既存の画像処理モデルは常に間違って1種の衣類(例えば、捩じれて絡み合ったシャツ)を別の1種の衣類(例えば、ブラジャー)と識別することによって、偽陽性出力を継続的に生成する。仮に、洗濯機が間違ってブラジャーを洗濯するために(例えば、低いタンブリング速度及び低い回転速度が求められる)、シャツを洗濯するために設計された洗濯循環設定(例えば、高いタンブリング速度、高い回転速度等)を選択すれば、洗濯機はブラジャーを永久に損傷する。
これらの原因によって、画像処理モデルの対象の検出及びバイカテゴリ分類の精度を向上させ、同時に高いリコール率を保ち、かつ検出された分類済みの対象に基づいて機器操作設定を自動的に選択するために、改善の方法及びシステムが強く求められる。
本発明はシステム及び方法を説明し、この方法において、第1画像処理モデルを受信することであって、第1画像処理モデルは対応する入力画像を第1カテゴリまたは第2カテゴリに分類するようにトレーニングされ、第1カテゴリは、第1タイプの少なくとも一つの対象が含まれる画像に対するものであり、第2カテゴリは、第1タイプの少なくとも一つの対象が含まれない画像に対するものであることと、第1画像処理モデルが出力した複数の推定結果から、偽陽性結果としての推定結果の第1サブセットを識別し、偽陽性結果は、第1タイプの少なくとも一つの対象が含まれない第1セットの画像を第1タイプの少なくとも一つの対象が含まれる画像に対する第1カテゴリに分類するものであることと、第1セットの画像から第1セットの新たなトレーニングデータを生成することであって、第1セットの画像における対応画像を補強して第1の対応する複数の画像を取得することと、第1の対応する複数の画像が偽第1カテゴリの少なくとも一つの対象を含むとマークされることとを含み、偽第1カテゴリは、第1カテゴリ及び第2カテゴリと異なることと、少なくとも第1セットの新たなトレーニングデータが含まれるトレーニングデータ集合によって第2画像処理モデルをトレーニングすることにより、対応する入力画像を、第1タイプの少なくとも一つの対象が含まれる画像に対する第1カテゴリと、第1タイプの少なくとも一つの対象が含まれない画像に対する第2カテゴリと、第1画像処理モデルによって第1カテゴリと誤分類されやすい対象が含まれる画像に対する偽第1カテゴリと、に分類することと、第1マシンによってキャプチャされた第1入力画像の第1推定結果に基づいて、第1マシンの機器設定を修正することであって、第1推定結果は、第2画像処理モデルによって生成され、かつ第1カテゴリに対応することと、を含む。
本発明で説明された方法及びシステムに基づいて、画像処理モデルを用いて誤分類されやすい対象を検出及び分類ことに関連する各種の問題を解決できる。
一つの方面において、一部の実施例により、家電製品に通信可能に結合され、かつ家電製品の一つまたは複数の機能を制御するように配置されるコンピューティングシステムによって前記方法を実行する。
一部の実施例により、コンピューティングシステムは、プロセッサと、命令が記憶されているメモリとを含み、前記命令が実行されるとき、一つまたは複数のプロセッサに本発明で説明される方法を実行させる。一部の実施例により、電子デバイスは、一つまたは複数のプロセッサと、一つまたは複数のプログラムが記憶されているメモリとを含み、一つまたは複数のプログラムが一つまたは複数のプロセッサによって実行されるように配置され、かつ一つまたは複数のプログラムは命令を含み、当該命令は本文で説明されるいかなる方法の操作の性能を実行しまたはその実行を引き起こすことに用いられる。一部の実施例により、非一時的なコンピュータ可読記憶媒体に命令が記憶され、当該命令が電子装置によって実行されるとき、電子装置が本文で説明されるいかなる方法の操作の性能を実行しまたはその実行を引き起こす。一部の実施例により、電子デバイスは、画像のキャプチャに用いられる装置と、本文で説明されるいかなる方法の操作の性能を実行しまたはその実行を引き起こす装置とを含む。
以下の詳しい説明によって、本願の様々な追加した利点が明らかである。
一部の実施例による家電製品システムの操作環境を示すブロック図である。 一部の実施例による家電製品システムを示すブロック図である。 一部の実施例による家電製品システムを示すブロック図である。 一部の実施例による、洗濯機に積載された洗濯される衣類の検出画像に基づいて洗濯循環設定を自動的に選択するプロセスの模式図である。 一部の実施例による対象の検出及びバイカテゴリ分類の精度を向上させるとともにリコール率を保つように画像処理モデルをトレーニングすることに用いられるプロセスの模式図である。 一部の実施例による図3で説明されるマルチパストレーニングプロセスにおいて生成される画像処理モデルの模式図であり、そのうち、更新されるモデルがリコール率を保つとともに対象の検出及びバイカテゴリ分類の精度を向上させる。 一部の実施例による、物体検出モデルのマルチパストレーニングによって生成された画像検出とバイカテゴリ分類結果とに基づいて機器設定の自動選択を実行する方法のフローチャートである。 一部の実施例による例示的な家電製品の図である。
図面における複数の図による同一の符号は対応する部分を示す。
図面を参照しなから好ましい実施例に対して詳しく説明することによって、以下は開示した技術の上記した特徴並びに利点及びその付加特徴並びに利点をよりよく理解する。
現在開示された技術の実施例または従来技術における技術的手段をより良く説明するために、以上は実施例または従来技術を説明するために必要な図面を簡単に紹介した。明らかに、以上の説明における図面は現在開示された技術の一部の実施例を示すものに過ぎず、そして、当業者にとって創造工夫をせずにこれらの図面により他の図面を取得することもできる。
以下は実施例を詳しく参照して、図面において実施例の例を示す。以下の詳しい説明において、本開示が呈したテーマに対する徹底した理解を提供するために多くの具体的な詳細を説明した。しかし当業者にとってこれらの具体的な詳細がない場合でも本開示のテーマを実践できることは明らかである。他の実例において、実施例の各方面を不必要的に誤魔化すことを回避するために周知方法、プロセス、コンポーネント及び回路を詳しく説明していない。
以下は本願の実施例における図面を参照しながら、本願の実施例における技術的手段に対して明らかに且つ完全に説明する。明らかに、説明される実施例は本願の一部の実施例であり、全ての実施例ではない。本願における実施例に基づいて、当業者が創造的な労働をしないうちに取得するすべての他の実施例は、本願の範囲に属する。
図1Aは一部の実施例による家電製品システムの操作環境100を示すブロック図である。
家電製品システムの操作環境100は一つまたは複数の家電製品(例えば、電器A110、電器B112及び電器C114)を含み、一つまたは複数の家電製品はネットワーク190(例えば、インターネットのワイドエリアネットワーク、またはスマートホームネットワークのローカルエリアネットワーク)を介して一つまたは複数のサーバ(例えば、トレーニングセットサーバ120及びトレーニングモデルサーバ122)に接続され、及び一つまたは複数のユーザデバイス(例えば、ユーザデバイスA111、ユーザデバイスB113及びユーザデバイスC115)および/またはアノテーションステーション128に選択可能に接続される。
一部の実施例において、一つまたは複数の家電製品(例えば、スマート洗濯機、スマート電子レンジ等)は、元のセンサデータ(例えば、画像、重量、温度、ヒートマップのデータ等)を収集し且つ元のセンサデータを対応するユーザデバイス(例えば、スマートフォン、タブレット等)、アノテーションステーション128(例えば、ワークステーション及びデスクトップコンピューター)および/またはトレーニングセットサーバ120(例えば、家電製品のメーカーまたはメーカー向けのサードパーティのサービスプロバイダーによって提供されるサーバ)に送信するように配置される。一部の実施例において、一つまたは複数の家電製品は、トレーニングモデルサーバ122および/または対応するユーザデバイスから制御命令を受信するように配置される(例えば、電器C114は野菜をローストするためにトレーニングモデルサーバ122から制御命令を受信して電子レンジの温度を425°Fに設置することができ、電器A110はユーザデバイスA111から制御命令を受信して洗濯循環を選択することができる)。一つまたは複数の家電製品(例えば、電器A110、電器B112及び電器C114)の更なる詳細に関しては本開示の他の部分の詳しい説明を参照する。
一部の実施例において、一つまたは複数のユーザデバイスは、対応する電器から元のセンサデータを受信するように配置される(例えば、電器A110に対応するユーザデバイスA111は電器A110から元のセンサデータを受信するように配置される)。一部の実施例において、一つまたは複数のユーザデバイスはさらにアノテーションデータをアノテーションステーション128および/またはトレーニングセットサーバ120に送信するように配置される。一部の実施例において、一つまたは複数のユーザデバイスは制御命令を生成して対応する電器に制御命令を送信するように配置される(例えば、ユーザデバイスA111は電器A110に命令を送信して電器A110をオン/オフし、または電器A110における設定を選択する)。一部の実施例において、一つまたは複数のユーザデバイスは携帯電話、タブレットまたはコンピュータデバイスを含むが、これらに限定しない。一部の実施例において、一つまたは複数のユーザデバイスは一つの電器に対応してもよく(例えば、コンピュータおよび携帯電話はいずれも電器A110に対応してもよく(例えば、機器設定のプロセスにおいて両方も電器Aの制御デバイスとして登録される)、それによって、電器A110が元のセンサデータをコンピュータおよび携帯電話中の一方または両方に送信することができる)。一部の実施例において、ユーザデバイスは電器に対応する(例えば、電器とデータを共有するおよび/または電器と通信する)(例えば、ユーザデバイスA111は電器A110に対応する)。例えば、電器A110はデータを収集して(例えば、画像または温度データなどの元のセンサデータ)、収集されたデータをユーザデバイスA111に送信してもよく、それによって、ユーザはユーザデバイスA111において収集されたデータをアノテーションすることができる。
一部の実施例において、アノテーションステーション128は一つまたは複数の電器(例えば、電器110、112および114)から収集されたデータを受信するように配置され、それによって、専門なアノテーション担当者が収集されたデータに対してアノテーションする。一部の実施例において、アノテーションステーション128は一つまたは複数のユーザデバイス(例えば、ユーザデバイス111、113および115)からアノテーションデータを受信するように配置され、それによって、専門なアノテーション担当者によるレビュー、編集、および/または承認を行う。一部の実施例において、一つまたは複数のユーザデバイスからのアノテーションデータがアノテーションステーション128で承認されると、アノテーションステーションは、承認されたデータをトレーニングセットサーバに記憶されたトレーニングデータ集合に含まれるようにトレーニングセットサーバ120に送信する。一部の実施例において、アノテーションステーション128はサーバ120からアノテーションデータを検索して、専門なアノテーション担当者によるレビュー、編集、および/または承認を行う。一部の実施例において、アノテーションステーション128はサーバ120からアノテーションされていないデータを検索して、専門なアノテーション担当者によるアノテーションを行う。アノテーションステーション128においてアノテーションされたおよび/または承認されたセンサデータはトレーニングデータ集合に含まれるようにサーバ120に返される。
一部の実施例において、トレーニングセットサーバ120は一つまたは複数の家電製品(例えば、電器110、112および114)から元のセンサデータを受信し、および/または一つまたは複数のユーザデバイス(例えば、ユーザデバイス111、113および115)からアノテーションデータを受信するように配置される。一部の実施例において、トレーニングセットサーバ120はさらに、アノテーションステーション128に元のデータおよび/またはアノテーションデータを送信して、アノテーションステーション128からアノテーションされたおよび/または承認されたアノテーションデータを受信するように配置される。トレーニングセットサーバ120は、トレーニングモデルサーバ122が採用するトレーニングモデルおよびトレーニング方法によって、アノテーションデータを事前処理し、例えば、トレーニングデータに対してグループ化、分割並びに関連付けし、及びトレーニングデータをインデックス並びに記憶するように配置される。トレーニングセットサーバ120は、トレーニングデータをリクエストする特定のトレーニングモデルに基づいて、選択されたトレーニングデータ(例えば、アノテーションステーション128において承認されたアノテーションデータに対応するデータ又はこのアノテーションデータ基づくデータを含む)をトレーニングモデルサーバ122に送信するように構成される。
一部の実施例において、トレーニングモデルサーバ122は、トレーニングセットサーバ120からトレーニングデータを受信するように配置される。トレーニングモデルサーバはさらに、選択可能に一つまたは複数の電器および/またはユーザデバイスに制御命令(例えば、特定の家電製品の制御プロトコルに従って準備された機器命令)および/またはテキストデータ(例えば、テキストメッセージ)を送信するように配置される。トレーニングモデルサーバ122は、識別モデル123(例えば対象を識別および分類するために用いられる)、位置決めモデル124(例えば、対象の位置決めおよび対象の輪郭の表示に用いられる)および他のモデルを含む。識別モデル123は、家電製品によって操作される対象(例えば、衣類、食物等)の識別に関連する。位置決めモデル124は、家電製品における品物の位置決めに関連する。例えば、位置決めモデル124は、スマートオーブンのオーブンラックの左側にある2枚の鶏肉、およびスマートオーブンのオーブンラックの右側にある4枚のクッキーを識別して、スマートオーブンによってキャプチャされた画像においてそれらの輪郭を一つずつ描くことに用いられ。トレーニングモデルサーバ122は、トレーニングセットサーバ120から受信したトレーニングデータに基づいて識別モデル123、位置決めモデル124および/または他のモデルをトレーニングする。識別モデル123、位置決めモデル124および他のモデルのトレーニングが十分に完了すると(例えば、精度の閾値レベルに達すると)、トレーニングセットサーバ120は家電製品からリクエストを受信して、家電製品によってキャプチャされたセンサデータに基づいてアイテムのアイデンティティ/位置をリアルタイムで決定する。一部の実施例において、トレーニングセットサーバ120によってアイテムを決定する条件は、リクエストを行った家電製品に返されて提供され、それにより、各家電製品は決定されたアイテムの条件に基づいて適切な動作を決定し、例えば、家電製品の操作を変化し、および/またはユーザに警告する。
一部の実施例において、家電製品(例えば、電器110、112および114)、ユーザデバイス(例えば、ユーザデバイス111、113および115)、アノテーションステーション128、トレーニングセットサーバ120とトレーニングモデルサーバ122は一つまたは複数のネットワーク190によって接続される(例えば、一つまたは複数のネットワーク190とデータを共有し、および/またはそれと通信する)。一つまたは複数のネットワーク190は有線および無線ネットワークを含んでもよく、かつ家庭のローカルエリアネットワークまたはワイドエリアネットワーク(例えば、インターネット)であってもよい。
図1Bは一部の実施例による家電製品システム101を示すブロック図である。
一部の実施例において、図1Bに示すように、家電製品システム101は、家電製品140および家電製品140と別に実現されるコンピューティングシステム130を含む。家電製品140は、図1Aにおける家電製品110、112および114のいずれか一つとして用いられることができる。一部の実施例において、コンピューティングシステム130は一つまたは複数のネットワーク190を介して家電製品140と通信する。一部の実施例において、コンピューティングシステム130はユーザデバイスで実現される(例えば、家電製品を制御し且つ家電製品とインタラクションするためのユーザーアプリケーションに関連する)。一部の実施例において、コンピューティングシステム130および電器140はさらに、コンピューティングシステム160と通信して、クライアント-サーバーに基づいて、コンピューティングシステム130および電器140におけるいくつかの機能を完成させる。一部の実施例において、コンピューティングシステム160は家電製品のメーカーのサーバで(例えば、トレーニングモデルサーバ122で)実現される。一部の実施例において、コンピューティングシステム160はスタンドアロンコンピュータで(例えば、スマートホームのローカルサーバで)実現される。
図1Bを参照し、コンピューティングシステム130は、上記の図1Aに関して説明されたユーザデバイス(例えば、ユーザデバイス111、113および115)に対応する、アノテーションユーザインターフェースモジュール132、画像処理モジュール134、ネットワーク通信ユニット136および一つまたは複数のデータベース138のうちの一つまたは複数を含む。一部の実施例において、コンピューティングシステム130は、ユーザ側操作進捗監視モジュール149およびユーザ側電器機能制御モジュール153をさらに含み、それにより、上記のような家電製品システムのデータ収集およびアノテーションを促進するほか、さらに家電製品システムの機器操作進捗監視および電器制御を促進する。
一部の実施例において、アノテーションユーザインターフェースモジュール132により、コンピューティングシステム130のユーザが対応する電器140(例えば、電器110、112または114)から受信された元のセンサデータを閲覧およびアノテーションできる。例えば、ユーザはそのユーザデバイス(例えば、ユーザデバイス111、113または115)におけるアプリケーションを使用して対応する電器によって記録された画像および温度データを閲覧することができる。一部の実施例により、ユーザは収集されたデータに対してアノテーションおよび詳細を追加できる。
一部の実施例において、画像処理モジュール155は、電器140のイメージングシステムによってキャプチャされた画像を取得して、当該画像を処理して分析する。画像処理モジュール154の機能および電器140のイメージングシステムの機能は、以下に例えば図3を参照して説明される。
ネットワーク通信ユニット136により、コンピューティングシステム130は、一つまたは複数のネットワーク190を介して電器140および/またはコンピューティングシステム160と通信することができる。
一部の実施例において、データベース138は前にキャプチャされた対象画像又は他の類似する家電製品システムからの画像を含む。一部の実施例において、データベース138は、コンピューティングシステムがユーザーに栄養情報およびレシピを提供することを可能にする成分データベース、またはコンピューティングシステムがユーザーに洗濯命令を提供することを可能にする衣類データベースを含む。
一部の実施例において、コンピューティングシステム130は、コンピューティングシステム160および電器140と結合してユーザ側機能、例えば、ユーザ側操作進捗監視および電器機能制御のユーザ側機能を提供するアプリケーションを含む。
一部の実施例において、ユーザ側進捗監視モジュール149は電器140によってキャプチャされたリアルタイムのセンサデータに基づいて機器操作の進捗を決定するように配置される。
一部の実施例において、ユーザ側電器機能制御モジュール153はユーザに対してユーザインターフェースを提供して電器の機能(例えば、電器のオン/オフまたは電器のパラメータの設置等)を直接的に制御し、および/または進捗監視の結果に基づいて制御命令を自動的に生成するように配置される。一部の実施例において、進捗監視の結果はユーザ側進捗監視モジュール149からユーザ側電器機能制御モジュール153に提供される。一部の実施例において、進捗監視の結果はコンピューティングシステム160からユーザ側電器機能制御モジュール153に提供される。一部の実施例において、進捗監視の結果は電器140からユーザ側電器機能制御モジュール153に提供される。
一部の実施例において、電器140は、1つまたは複数の第1センサ(例えば、センサ141)、1つまたは複数の加熱ユニット143、ディスプレイ144、I/Oモジュール145、ユーザインターフェース146、ネットワーク通信ユニット147、機械ユニット148、制御モジュール155、イメージングシステム、および選択可能な電器側動作進捗監視モジュール149’を含む。制御モジュール155は、電器側電器機能制御ユニット153’を選択可能に含む。
一部の実施例において、一つまたは複数の第1センサ141は、構造化データ、例えば温度、重量および/または湿度をキャプチャするように配置される。本開示で討論されたように、構造化データは、例えば、温度、湿度、時間、オン/オフ、オーブンモード等の定量または状態データを示す。例えば、一つまたは複数の第1センサ212は、家電製品140の温度センサ(例えば、温度計)または湿度センサ、または重量センサであってもよい。
一部の実施例において、一つまたは複数の加熱ユニット143は、加熱電器の少なくとも一部として配置される(例えば、加熱スマートオーブンの調理室の加熱コイルとして配置される)。
一部の実施例において、電器140はディスプレイ144を含み、ディスプレイ144はユーザに電器140に関する情報(例えば、現在選択される洗濯循環)を提供する。一部の実施例において、ディスプレイ144はI/Oモジュール145およびユーザインターフェース146と集積されてもよく、それによって、ユーザが情報を電器140に入力しまたは電器140から情報を読み出す。一部の実施例において、ディスプレイ144は、I/Oモジュール145およびユーザインターフェース146と結合してユーザにアドバイス、アラームと栄養情報を提供して、ユーザから制御命令(例えば、電器140を介して提供されるハードウエアおよび/またはソフトウェアインターフェース)を受信する。一部の実施例において、ディスプレイ144は、タッチスクリーンディスプレイ、またはボタンを含むディスプレイであってもよい。一部の実施例において、ディスプレイ144は、タッチスクリーン特徴を有しない簡単なディスプレイ(例えば、従来のLEDまたはLCDディスプレイ)、かつユーザインターフェース146は、手動で制御できるハードウエアボタンまたはノブであってもよい。一部の実施例において、ユーザインターフェース146は、選択可能に、ディスプレイ、スピーカ、キーボード、タッチスクリーン、音声入出力インターフェース等のうちの一つまたは複数を含む。
ネットワーク通信ユニット147は、機能でネットワーク通信ユニット137に類似する。ネットワーク通信ユニット147により、電器140が一つまたは複数のネットワーク190を介してコンピューティングシステム130および/またはコンピューティングシステム160と通信する。
本開示で説明された機械ユニット148は、家電製品140の内部感知(例えば、イメージング)、加熱および/またはレイアウトを物理的に変化させるように配置される、電器140のハードウエアおよび対応するソフトウェア並びにファームウェアコンポーネントを指す。例えば、一つまたは複数の第1センサ141は機械ユニットに対応してもよく、それにより、一つまたは複数のセンサ141が電器140内の対応する領域をスキャンするように移動することができる(例えば、モーターは、所定の領域においてデータをキャプチャするために、所定の領域においてセンサを移動させるように構成されてもよい)。一部の実施例において、家電製品システムの家電製品機能制御ユニット(例えば、家電製品側家電製品機能制御モジュール153’、ユーザ側電器機能制御モジュール153および/またはサーバ側電器機能制御モジュール153’’)からの命令に基づいて電器140の機械ユニット148を操作する。
一部の実施例において、電器側操作進捗監視モジュール149’は電器140の操作進捗を監視するように配置される。例えば、電器がスマートオーブンである場合、電器側操作進捗監視モジュール149’は一つまたは複数の第1センサ212および/または一つまたは複数の第2センサ214が記録した元のデータに基づいて、食物が中程度の熟度に調理されたと決定してもよい。一部の実施例において、電器側操作進捗監視モジュール149’は、食物アイテムの位置および輪郭決定モデルと、コンピューティングシステム160でトレーニングされた食物調理進行レベル決定モデルとを使用して、センサ141及びイメージングシステムによってキャプチャされたリアルタイムのセンサデータに基づいて、食物アイテムの調理の進捗を決定するように構成される。
一部の実施例において、イメージングシステムは、一つまたは複数の第2センサ142を含む。一つまたは複数の第2センサ142は非構造化データをキャプチャするように配置される。非構造化データの例は、RGB画像および熱画像または赤外線画像を含む。例えば、電器がスマートオーブンである場合、一つまたは複数の第2センサ142は電器の調理箱にある食物の静止画像またはビデオをキャプチャまたは記録するように配置される。一部の実施例において、電器がスマートオーブンである場合、イメージングシステムはデータ記憶システムを含み、データ記憶システムは、食物調理箱の寸法、食物調理箱内の基準マークの寸法、カメラと食物調理箱内の各種基準マークとの間の距離を記憶し、それにより、カメラで撮影した画像を用いて画像内の食物アイテムの寸法及び形状を正確に決定することができる。そのため、イメージングシステムは、従来のイメージングシステムにおける、ユーザーが画像内のアイテムのサイズ、位置、および方向の情報を利用せずに、画像内において基準マークを配置し、又は画像を使用することに対する特別な注意を必要とする問題を排除した。一部の実施例において、イメージングシステムは、画像キャプチャトリガシステムを含む。例えば、一部の実施例において、画像キャプチャトリガシステムがカメラの視野において変化があったことを検出するとき、画像キャプチャがトリガされる。例えば、オーブンの扉が開かれると、オーブン内の照明条件が変化され、オーブンの扉が開かれることに応答して画像のキャプチャがトリガされる。一部の実施例において、食物アイテムがカメラの視野で現れ始めるとき、画像キャプチャがトリガされる。一部の実施例において、食物アイテムが完全に挿入され、且つオーブンの扉が閉じられると、画像キャプチャがトリガされる。一部の実施例において、画像キャプチャトリガシステムはさらに、オーブンの扉が開かれる前にオーブン内部の箱基線画像としてオーブンラックの画像を直ちにキャプチャして記憶するように、カメラに対して指示する。一部の実施例において、例えば、ユーザが食物アイテムを食物調理箱に挿入した後、ユーザの入力に応答して、手動で画像キャプチャをトリガする。手動トリガーがより簡単でその実現が複雑ではなく、且つ手動トリガーにより、ユーザーが食材アイテムの特徴を最も反映できる画像を意図的にキャプチャして成分認識に用いられる。一部の実施例において、画像処理モジュール154は、一つまたは複数の第2センサ142によってキャプチャされた画像を取得して、食物アイテムを挿入する前にキャプチャされた箱基線画像に基づいて画像に対して事前処理を行って、画像から背景を消去する。箱基線画像は、家電システムの食物調理箱内の食物サポートプラットフォームの適切な状態をキャプチャし、食物アイテムが含まれる画像に優れたフィルタリングを提供して背景を消去する。
一部の実施例において、制御モジュール155は、センサ制御151、センサ制御152および電器側電器機能制御モジュール153’を含む。センサ制御151は一つまたは複数の第1センサ141を制御および調整するように配置される。例えば、センサ制御151は、一つまたは複数の第1センサ141が1分間おきに温度データを記録するために、命令を送信してもよい。センサ制御152は一つまたは複数の第2センサ142を制御および調整するように配置される。例えば、一つまたは複数の第2センサ142が移動前に開始位置に位置しかつ移動後に最終位置に位置すると、センサ制御152は、一つまたは複数の第2センサ142が第1方向に沿って移動し、ピクチャーをキャプチャするように、命令を送信してもよい。
電器側電器機能制御モジュール153’は、電器140の各種の機能を制御および調整するように配置される。例えば、電器側電器機能制御モジュール153’は、一つまたは複数の加熱ユニットにおける第1加熱ユニットを活性化するために加熱ユニット143に命令を送信し、またはその位置を変えさせるために機械ユニット148に命令を送信する。一部の実施例において、電器側電器機能制御モジュール153’は事前配置された操作プロトコルに基づいて(例えば、電器140の正常で常套な機能を実現させるために)制御命令を生成してそれを電器140の各コンポーネントに送信する。一部の実施例において、電器側電器機能制御モジュール153’は、家電製品内のリアルタイム操作進捗監視に基づいて、制御命令を生成して家電製品140の各コンポーネントに制御命令を送信する(例えば、事前設定された反応プロトコルまたはプログラムに基づいて、ユーザーの介入なしに電器140の機能を自動的に調整する)。一部の実施例において、電器側電器機能制御モジュール153’は、ユーザデバイスから受信したリアルタイムのユーザ命令または電器140のユーザインターフェース146を介して受信したリアルタイムのユーザ命令に基づいて制御命令を生成し、且つ制御命令を電器140の各コンポーネントに送信する。一部の実施例において、操作進捗監視の結果をユーザ側操作進捗監視モジュール149から電器側電器機能制御モジュール153’に提供する。一部の実施例において、操作進捗監視の結果をコンピューティングシステム160から電器側電器機能制御モジュール153’に提供する。一部の実施例において、操作進捗監視の結果を電器側操作進捗監視モジュール149’から電器側電器機能制御モジュール153’に提供する。
一部の実施例において、コンピューティングシステム160は、サーバ側操作進捗監視モジュール149’’およびサーバ側電器機能制御モジュール153’’を含む。一部の実施例において、サーバ側操作進捗監視モジュール149’’は図1Aに示す識別モデル123、位置決めモデル124および他のモデルを使用して、家電製品140から(例えば、直接的にまたはコンピューティングシステム130を介して)受信したリアルタイムのセンサデータに基づいて対象のアイデンティティ、位置、プロファイルおよび他の条件を決定する。一部の実施例において、コンピューティングシステム160は、例えば、図1Aにおけるトレーニングモデルサーバ122によって実現される。
図1Bにおける家電製品システム101内の各種のシステムの機能は説明的なものに過ぎない。機能の他の配置および機能の他の分割は可能である。各種の実施例において、一つのサブシステムのいくつかの機能は別の一つのサブシステムにおいて実現されてもよい。
一部の実施例において、図1Cに示すように、家電製品システム101は、電器140’と集積されるコンピューティングシステム130’を含む。一部の実施例において、コンピューティングシステム130’は、コンピューティングシステム160’と通信して電器140’のいくつかの機能を完成させる。一部の実施例において、電器140’は、選択可能に、コンピューティングシステム160と通信して電器140’のいくつかの機能をアウトソーシングしてもよい。
図1Cを参照し、電器140’は、内蔵するコンピューティングシステム130’を有する。電器140’は、センサ141、加熱ユニット143、ディスプレイ144、I/Oモジュール145、ユーザインターフェース146、ネットワーク通信ユニット147、機械ユニット148、電器側操作進捗監視モジュール149’およびイメージングシステムを含む。電器140’のこれらのコンポーネントは電器140におけるコンポーネントに対応し、かつ類似する機能を有し、簡潔のために、ここでは繰り返して説明しない。
一部の実施例において、電器140’内のコンピューティングシステム130’は、制御モジュール155’、センサ制御151’、電器側電器機能制御モジュール153’”、画像処理システム154’、データベース138’、及び電器側アノテーションユーザインターフェースモジュール132’を含む。これらのコンポーネントの機能はそれらが電器140において同一の名称を有する対応する対応物に対応して(例えば、センサ制御151’はセンサ制御151と同一の機能を有する)、簡潔のために、ここでは繰り返して説明しない。一部の実施例において、アノテーションユーザインターフェースモジュール132”’により、ユーザが電器140と分離するユーザデバイスにおいてローユーザデータを閲覧およびアノテーションできる。それに比べて、電器側アノテーションユーザインターフェースモジュール132’により、ユーザが電器140’のディスプレイ144においてローユーザデータを閲覧およびアノテーションでき、および/または音声でアノテーション画像における操作進捗レベルを入力できる。
上記の例は、単に説明の目的で提供されるものである。以下は他の図面および説明を参照して各コンポーネントの機能の更なる詳細を説明する。本開示に記載の1つまたは複数のコンポーネントは、他のコンポーネントと独立して使用され得ることが理解される。
図2は一部の実施例による、洗濯機に積載された洗濯される衣類の検出画像に基づいて洗濯循環設定を自動的に選択するプロセス200の模式図である。便宜上、プロセス200は、洗濯機のコンピューティングシステム(例えば、図1Cにおける電器140’のコンピューティングシステム130’)によって実行されると説明される。
ユーザーが手動で洗濯機の洗濯循環設定を選択することに依存せず、洗濯機のコンピューティングシステムは、画像の検出および分類モデルを使用して衣類のタイプを識別し、適切な洗濯機の洗濯循環設定を自動的に選択する。一部の実施例において、自動的に選択される洗濯機循環設定は、積載衣服の検出された特性(例えば、織物のテクスチャ、色、寸法、タイプなど)に基づいたものであり、且つ洗濯中の衣類に対する損傷(例えば、色あせ、裂け目、引張りなど)を最小限に抑えるように設定される。一部の実施例において、洗濯機への損傷を防ぐために自動的に選択される洗濯循環を設定する。例えば、コンピューティングシステムが金属ジッパーのような金属部品を備えた衣類を検出した場合、コンピューティングシステムは、金属部品が洗濯機のドラムを傷つけないように、タンブリングが低減される洗濯循環を選択することができる。一部の実施例において、コンピューティングシステムによって、ユーザが洗濯目標の優先度を区別させることができ(例えば、衣類損傷の防止、洗浄結果の最大化、洗濯時間の最小化等)、かつコンピューティングシステムがユーザの配置に応じて洗濯循環を自動的に選択することができる。ユーザーは、洗濯機循環設定の自動選択を無効にして、代わりに手動で洗濯機循環設定を選択することができる。
自動で洗濯循環を選択するために、洗濯機のコンピューティングシステムは、まず洗濯機内に積載される洗濯される衣類の複数の画像を取得する(202)。一部の実施例において、一つまたは複数のカメラ(例えば、図1Bのセンサ141または142)は、洗濯機の中に取り付けられ、かつカメラの視野が洗濯機のドラムを覆う。例えば、一つまたは複数のカメラは、洗濯機の扉または窓に取り付けられてもよい。一部の実施例において、積載された衣類のさらなる代表的で完整なピクチャーを取得するために、洗濯機のドラムは、各画像キャプチャセッションの間にわずかに(例えば、半回転)タンブリング回転して、積載された洗濯される衣類を展開させる。一部の実施例において、洗濯機のドラムがタンブリング回転しているとき、一つまたは複数のカメラが積載された洗濯される衣類のビデオを撮影する。一部の実施例において、洗濯循環の対応する設定に基づいて洗濯循環を正式に開始する前に、コンピューティングシステムは、洗濯機にマシンドラムの回転を開始させるように指示し、マシンドラム内の衣類アイテムの一連の画像を取得し、それらの画像の各画像を使用して対象の検出および分類に用いられる入力画像とする。各入力画像からの推定結果を組み合わせることによって、複数の入力画像からの最終的な推定結果を取得する。例えば、一部の実施例において、複数の画像における一つの入力画像からの推定結果が、識別された衣類アイテムの中に最も厳しい設定要求を持つ特定のタイプの衣類アイテムが存在することを指示すれば、機器設定はその特定のタイプの衣類アイテムの存在に基づいて変更される。一部の実施例において、機械設定の変更をトリガーするために、複数の入力画像における閾値数の入力画像において特定のタイプの衣類アイテムを検出する必要がある。
1つまたは複数のカメラが積載された洗濯物の画像に対する撮影を完成すると、コンピューティングシステムは、画像を画像処理モジュール(例えば、図1Cにおける画像処理モジュール154’)に送信して事前処理を行う(203)。事前処理中に、非構造化画像の元のデータは、変換してから画像処理モデルに送られる。事前処理は、トレーニング速度および分類精度の向上に役立つ。例示的な事前処理技術は、縦横比の正規化、画像のスケーリング、平均値の正規化、データの正規化、次元縮退、データの強調などを含む。
次に、事前処理画像は、1つまたは複数の画像処理モデルに送信されて特徴検出に用いられる(204)。一部の実施例において、画像処理モデルは、洗濯機のコンピューティングシステムに記憶され、且つ洗濯機のコンピューティングシステムにおいてローカルで実行される。または、画像処理モデルは、リモートサーバ(例えば、図1Aにおける推定結果セットサーバ129)に記憶されてリモートサーバにおいて実行され、当該リモートサーバはネットワーク(例えば、図1Aにおけるネットワーク190)を介して洗濯機のコンピューティングシステムに接続される。画像処理モデルは、ネットワークを介して洗濯機の作業年限が切れるまでに更新し続けることができる。
一部の実施例において、画像処理モデルは、事前処理された洗濯される衣類の画像を入力として受信し、積載された洗濯される衣類のうちの一つまたは複数の衣類の検出された特徴を出力する。画像処理モデルは、一つまたは複数の画像検出アルゴリズム、例えば、畳み込みニューラルネットワーク(CNN)、領域に基づくCNN(R-CNN)、高速及びより高速なR-CNN、領域に基づく完全畳み込みネットワーク(R-FCN)、You-Only-Look-Once(YOLO)、シングル検出器(SSD)等を含んでもよい。トレーニング画像処理モデルに関連する資源コストが高いため、一部の実施例において、画像処理モデルはまずリモートコンピューティングシステム(例えば、図1Aにおけるトレーニングモデルサーバ122)においてトレーニングされ、かつネットワークを介して更新されて洗濯機のローカルコンピューティングシステムに送信される。
一部の実施例において、各画像処理モデルは、1種のタイプの特徴を検出するように配置される。例えば、個別の画像処理モデルは、衣類のタイプ(206)、積載のサイズ(208)、衣類の色(210)、泡(212)、テクスチャのレベル(214)等を検出するように配置されてもよい。一部の実施例において、画像処理モデルは、特徴検出のために洗濯機に取り付けられたセンサから付加の入力を受信する。例えば、負荷重量を測定するために1つまたは複数の体重計を洗濯機に取り付けてもよい。一部の実施例において、各画像処理モデルは、バイカテゴリ分類分類器である。例えば、画像処理モデルは、画像が「シャツ」を含むかどうかを決定するように構成されてもよく、または画像処理モデルは、画像が「赤い服」を含むかどうかを決定するように構成されてもよい。
画像処理モデルを使用して衣類のタイプを検出することに関連する問題は、ある衣類のタイプが誤分類されやすくて、それにより、画像処理モデルに偽陽性結果(または、代わりに偽陰性結果)を常に発生させてしまうことである。これは、衣類がドラム内で捻られて絡んでいることが多いことで、その全部の特徴が完全に隠蔽されているためと考えられる。例えば、絡んだりねじったりしたシャツはブラジャーに非常に似ているように見える可能性があって、画像処理モデルは、シャツがブラジャー(偽陽性)であると誤って決定する可能性がある。対象の検出および分類の精度を高める(例えば、偽陽性の結果の数を減らす)とともに、画像処理モデルによってリコールを維持するために(例えば、偽陰性の結果の数を増やさない)、トレーニングサーバ(例えば、図1Aのトレーニングモデルサーバ122)において修正された機器学習トレーニングプロセスを実現させる。図3を参照して修正された機器学習トレーニングプロセスを詳しく説明した。
画像処理モデルが積載された洗濯される衣類を検出して分類した後、洗濯機のコンピューティングシステムは、検出結果を対応する洗濯循環にマッピングする(216)。例示的な洗濯循環は、通常の循環(例えば、綿系衣類に用いられる)、パーマネントプレス循環(例えば、カラー系衣類に用いられる)、繊細循環(例えば、細粒系衣類に用いられる)等を含む。各循環は、異なる水温、タンブリング速度、回転速度、および洗濯時間に関連する。
検出結果から対応する洗濯循環設定へのマッピングは事前配置されたものであり、後にリモートサーバ(例えば、図1Bのコンピューティングシステム130)を介して更新されてもよい。例えば、マッピングは、1つ又は複数の洗濯ターゲット、例えば、衣類の寿命の維持、洗濯時間の短縮、汚れの除去などを最大化するように構成されてもよい。マッピングは、検出される衣類の素材、テクスチャ、サイズ、数、および色に基づいたものであってもよい。例えば、コンピューティングシステムが洗濯される衣類の負荷が羊毛からなる鮮やかな衣類が含まれていることを検出した場合、穏やかな洗濯循環を使用することができる。
図2は、画像処理モジュールからのターゲット検出結果および分類結果に基づいて機器設定を如何に制御する例であり、当該ターゲット検出および分類結果が本開示に説明されたマルチパストレーニングプロセスによって生成されたものである。一部の実施例により、他のタイプの機器は、機器の各種の動作を可変的な設定で制御するために本開示に記載された方法を選択可能に使用し、他のタイプの機器は、例えば、乾燥機ドラムの画像において識別される異なるタイプの衣類アイテムに対する異なる乾燥設定を有する衣類乾燥機、オーブンチャンバーの画像において識別される異なるタイプの食物アイテムに対する異なる調理設定を有するオーブン、ディッシュラックの画像における異なるタイプのお皿および容器に対する異なる洗濯設定を有する食器洗い機等を含む。
図3は一部の実施例によるマルチパストレーニングプロセスにおいて画像処理モデルをトレーニングすることに用いられるプロセス300の模式図である。便宜上、プロセス300は、リモートサーバ(例えば、図1Aのトレーニングモデルサーバ122)によって実行されるものとして説明される。プロセス300は、ローカルコンピューティングシステム(例えば、図1Cのコンピューティングシステム130’)によって記憶および使用されるトレーニングされた画像処理モデルを出力する。1つの代替実施例において、プロセス300は、ローカルコンピューティングシステムによって実行され、同じローカルコンピューティングシステムによって記憶および使用されるトレーニングされた画像処理モデルを出力する。プロセス300は、一般化された画像処理モデルトレーニングプロセスであり、図2で説明したようなトレーニングが衣類のタイプを検出するに用いられる画像処理モデルには特定されない。
プロセス300は、少なくとも第1トレーニングパス301および第2トレーニングパス303を含むマルチパスプロセスである。従来のシングルパス画像処理モデルトレーニングプロセス(例えば、CNNにおける逆方向伝播)に比べて、プロセス300は、まずトレーニングデータセットにおける「困難」データポイント(例えば、画像処理モデルが偽陽性推定結果を出力する原因となる1セットのデータポイント)を識別し、次に画像処理モデルに付加の出力タイプを追加してこれらの困難データポイントの推定結果を説明し、それによって、推定の精度を向上させる。結果として、プロセス300は、バイカテゴリ分類モデル(例えば、第1画像処理モデル306)をマルチ分類モデル(例えば、第2画像処理モデル306)に効果的に変換する。
第1のトレーニングパス301の期間中に、コンピューティングシステムは、第1トレーニングセッション304において第1セットのトレーニングデータ302を用いて第1画像処理モデル306を生成する。第1セットのトレーニングデータ302は、画像処理モデルトレーニングに適用されるアノテーションデータを含む。例えば、第1セットのトレーニングデータ302は、衣類タイプ(例えば、家電製品が洗濯機である場合)がマークされ、または食物アイテムタイプ(例えば、家電製品がスマートオーブン又は電子レンジである場合)がマークされた1セットの画像であってもよい。一部の実施例において、一つの画像は、異なるデータタイプを有する複数のデータを含む。例えば、画像は、異なるタイプの複数の衣類を含んでもよい。このような場合、画像は、第1トレーニングセッション304に用いられる前に、複数のサブ画像に分割され、各サブ画像が一つのデータタイプ(例えば、衣類タイプ)を有する。
第1トレーニングセッション304は、データ(例えば、洗濯機内に積載された衣服の画像)を1つまたは複数の事前定義された出力カテゴリ(例えば、衣服タイプ)に適合させる画像処理モデルを出力する。画像処理モデルの例は、線形回帰、ロジク回帰、サポートベクターマシン、ニューラルネットワークなどが挙げられる。第1トレーニングセッション304の期間中に、画像処理モデルパラメータ(例えば、ニューラルネットワークいおける重み付き接続ノード)は、事前定義された損失関数を最小化するために微調整され(例えば、勾配下げ方法を用いる)、ここで、損失関数は、画像処理モデルの予測データタイプと実際のデータタイプとの一致度を測定する。
第1トレーニングセッション304が終了するとき、第1画像処理モデル306を生成する。次に、コンピューティングシステムは、第1検証セッション308において第1画像処理モデル306をテストする。第1検証セッション308の期間中に、第1画像処理モデル306は1セットの検証データを受信して対応するデータタイプを予測する。一部の実施例において、コンピューティングシステムは、第1セットのトレーニングデータ302を検証データとして第1画像処理モデル306に供給する。あるいは、コンピューティングシステムは、第1セットのトレーニングデータ302と異なる1セットのアノテーションデータセットを検証データとして使用する。
一部の実施例において、第1画像処理モデル306は、バイカテゴリ分類予測機(例えば、入力画像が特定のタイプの衣類を含むかどうかを決定するための出力ノードを有するニューラルネットワーク)である。バイカテゴリ分類画像処理モデル306からの出力(予測ともいう)が実際の入力データタイプと比べと、(1)真陽性結果314、(2)真陰性結果316、(3)偽陽性結果310、及び(4)偽陰性結果312の4つのカテゴリのうちの1つに分類されることができる。
真陽性結果314は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属したものとして正しく分類したことを示す(例えば、画像がシャツを含むと予測し、且つ画像が実際にシャツを含む)。
真陰性結果316は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属さないものとして正しく分類したことを示す(例えば、画像がシャツを含まないと予測し、且つ画像が靴下のみを含む)。
偽陽性結果310は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属したものとして誤って分類したことを示す(例えば、画像がシャツを含むと予測したが、画像が実際に靴下のみを含む)。
偽陰性結果312は、第1画像処理モデル306が、入力サンプルをあるデータタイプに属さないものとして誤って分類したことを示す(例えば、画像がシャツを含まないと予測したが、画像が実際にシャツを含む)。
一部の実施例において、あるサンプルセットは誤分類されやすく、かつ第1画像処理モデル306に偽陽性結果を常に発生させてしまうことである。例えば、洗濯機の内部から撮影した画像に基づいて衣類タイプを検出するコンテキストには、シャツのようなねじれた衣類は常にブラジャーとして誤って検出されることが多い。そのため、ブラジャーを検出するように構成された画像処理モデルは、ねじれたシャツのみを有する画像が提供される場合に偽陽性予測結果を生成する可能性が高い。
第1画像処理モデル306の偽陽性結果の数を低減する(例えば、モデルの精度を向上させるために)とともに、偽陰性結果の数を増加しない(例えば、モデルのリコール率を維持または低減する)ために、コンピューティングシステムは、第2トレーニングパス303を実行して、第1画像処理モデル306に基づいて第2画像処理モデル328を生成する。第2トレーニングパス303の期間中に、コンピューティングシステムは、第1セットのトレーニングデータから第1画像処理モデル306に第1検証セッション308において偽陽性結果を発生させてしまう1セットのデータを識別して、識別された当該セットのデータに対して付加のマークを適用する。例えば、ねじれたシャツを含む画像の最初のデータタイプは「シャツ」である。当該画像により第1画像処理モデル306に偽陽性結果を発生させたことによって、コンピューティングシステムは、シャツのデータタイプを第2データタイプに置き換え、当該第2データタイプはシャツデータタイプが「擬似偽陽性カテゴリ318」(例えば、「偽シャツ」)に属することを示す。
一部の実施例において、トレーニングデータセットが画像データを含む場合、トレーニングのために用いられる新しく作成される擬似偽陽性データの数を増やすために、コンピューティングシステムは、識別される擬似偽陽性画像に対して画像補強322を実行する。データが画像データではない場合、他のタイプのデータ補強を実行し、またはデータ補強をスキップしてもよい。
第1画像処理モデル306に偽陽性結果を発生させてしまうデータに対して擬似偽陽性タイプラベル318を適用して、(当該データが画像データを含む場合)画像補強322を実行した後、コンピューティングシステムは、第1セットのトレーニングデータ302、および新しく生成された偽陽性データタイプを有するデータを含むことによって第2セットのトレーニングデータ324を形成する。
次に、コンピューティングシステムは、第2セットのトレーニングデータ324を使用して、第2トレーニングセッション326において第1画像処理モデル306を改めてトレーニングして、第2画像処理モデル328を生成する。第1画像処理モデル306と比べ、第2画像処理モデル328は、擬似偽陽性データタイプに対応する付加の出力を有する。その結果、第2画像処理モデル328に対するトレーニングおよび推定期間中に、擬似偽陽性ラベルを有するデータは、個別のカテゴリに分類される。例えば、第1画像処理モデルおよび第2画像処理モデルは、洗濯機におけるブラジャーを検出するように構成されてもよい。上述のように、あるタイプの衣類は、絡み合ったりねじれたりすると、部分的にブラジャーのように見えてしまい、画像処理モデルが偽陽性の結果を出力してしまうことがある。プロセス300によって、第2画像処理モデル328は、現在、画像を受信して画像における対象を(1)ブラッジャー、(2)ブラッジャーに非常に似てる衣類(例えば、画像処理モデル306に偽陽性結果を出力させた衣類)、および(3)他のタイプの衣類(例えば、靴下、ジーンズ、および第1画像処理モデルによってブラッジャーではないと正しく予測された他の衣類)に分類するように構成される。そのため、プロセス300は画像処理モデルの出力に対して粒状性を増加させて、従って、そのリコール率を保つとともに画像処理モデルの精度を増加させる。
一部の実施例において、第1の検証セッション308の期間中に第1画像処理モデル306に偽陰性結果310を出力させる原因となった1セットのデータを使用する代わりに、コンピューティングシステムは、第1画像処理モデル306に偽陽性結果312を出力させる原因となった1セットのデータを付加的にまたは選択可能に使用する。
対象タイプを特定するための得られた第2画像処理モデル328は、入力画像を処理して、対応するタイプの対象を検出する推定結果を生成するために用いられる。一部の実施例において、機器の特定の操作に対する機器設定の選択に関する(例えば、洗濯セッションの洗濯循環)各種の対象タイプ(例えば、デリケート、タオル、寝具、赤い衣類アイテムなど)について、図3で説明されたマルチパスモデルトレーニングは、改善された画像処理モデルを生成するために用いられ、対象タイプのアイテムを識別するために用いられてもよく、かつ各操作に対して、一つ以上の改善された画像処理モデル(例えば、繊細な衣類アイテム及び赤いアイテムを同時に検出するための改善された画像処理モデル)を活性化して、これらの改善された複数の画像処理モデルからの結果を組み合わせて(例えば、これらの設定への影響の事前設定された優先度などに基づいて)、特定の操作に対する設定値を生成する。
図4は一部の実施例による図3で説明されるマルチパストレーニングプロセスにおいて生成される画像処理モデルの模式図であり、そのうち、更新されるモデルがリコール率を保つとともに対象の検出及びバイカテゴリ分類の精度を向上させる。図4にニューラルネットワークが示されたが、いくつかの選択可能な実施例において、予測の精度を向上させるために同一の方式で他のタイプの画像処理モデルを改めて配置してもよい。オリジナルモデル402は、入力層404と、一つまたは複数の隠れ層406と、出力層408とを含む。出力層408は、予測された「陽性結果」及び「陰性結果」に対応する二つのノード(例えば、バイカテゴリ分類)を含む。例えば、オリジナルモデル402は、図3で説明されたような第1画像処理モデル306であってもよい。
図3で説明されたような最トレーニングのプロセスの後で、オリジナルモデル402は、更新されたモデル403に更新される。オリジナルモデル402と比べ、更新されたモデル403は、1つの余裕な出力ノード、即ち偽カテゴリ出力410を有する。上記のように、偽カテゴリ出力410は、データポイントが誤分類されやすい「困難サンプル」であることにより、例えば、オリジナルモデル402に偽陽性または偽陰性の結果を出力させることを示す。
図5は、一部の実施例による、画像検出と、物体検出モデルのマルチパストレーニングによって生成されたバイカテゴリ分類結果とに基づいて機器設定の自動選択を実行する方法500のフローチャートである。便宜上、方法500は、ネットワークを介して接続された複数のサーバを含むコンピューティングシステムによって実行されるものとして説明され、コンピューティングシステムの各サーバは、特定のタスクの実行に専用される。例えば、コンピューティングシステムは、トレーニングモデルサーバ(例えば、図1Aのトレーニングモデルサーバ122)および電器サーバ(例えば、図1Cのコンピューティングシステム130’)を含んでもよい。一部の実施例において、機器は、洗濯機、オーブン、電子レンジ、冷蔵庫、または他の家電製品である。
第一ステップとして、コンピューティングシステムは(例えば、トレーニングモデルサーバを介して)第1画像処理モデルを受信し、当該第1画像処理モデルは、対応する入力画像を、前記第1タイプの少なくとも一つの対象が含まれる画像に対する前記第1カテゴリと、前記第1タイプの少なくとも一つの対象が含まれない画像に対する前記第2カテゴリと、に分類するようにトレーニングされる(502)。そのため、第1画像処理モデルは、画像が第1カテゴリまたは第2カテゴリに属すると分類されるバイカテゴリ分類器である。例えば、第1画像処理モデルは、衣類の画像(例えば、洗濯機から撮影した洗濯される衣類画像)を、衣類のタイプ(例えば、シャツ)が含まれるもの、または衣類のタイプが含まれないもの(例えば、シャツなし)に分類するように設計されている。一部の実施例において、第1画像処理モデルは、前に第1セットのトレーニングデータを使用してリモートサーバにおいてトレーニングされるニューラルネットワークであり、第1セットのトレーニングデータは、ラベル対象が付けられた画像を含む。
第1画像処理モデルを受信した後、コンピューティングシステムは、第1画像処理モデルによって出力された複数の推定結果から偽陽性結果としての推定結果の第1サブセットを識別し、当該偽陽性結果は、第1タイプの少なくとも一つの対象が含まれない第1セットの画像を第1タイプの少なくとも一つの対象が含まれる画像に対する前記第1カテゴリに分類するものである(504)。一部の実施例において、コンピューティングシステムの画像処理モジュール(例えば、図1Cの画像処理モジュール154’)は、推定タスクを実行するように配置される。一部の実施例において、複数の推定結果を生成するために、コンピューティングシステムは、(画像処理モジュールを介して)第1セットのトレーニングデータ(例えば、第1画像処理モデルを生成するために用いられたトレーニングデータセット)、または第1セットのトレーニングデータと異なる第1セットの推定データ、または両方の組み合わせを対照して第1画像処理モデルを検証する。第1セットのトレーニングデータ及び第1セットの推定データは、いずれも対象タイプがマークされた画像を含む(例えば、「シャツ」、「靴下」、「ワンピース」などを含むとマークされる画像)。例えば、第1セットの画像における画像は、衣類タイプを含むとマークされ、第1画像処理モデルは、画像が「シャツ」を含むかどうかを検出するように設計される。そのため、推定結果の第1サブセットには、如何なるシャツを含んでもないがシャツを含むと第1画像処理モデルによって誤って分類された画像が含まれる。
次に、コンピューティングシステムは、第1セットの画像から第1セットの新たなトレーニングデータを生成することであって、第1セットの画像における対応画像を補強して第1の対応する複数の画像を取得することと、第1の対応する複数の画像が第1カテゴリおよび第2カテゴリと異なる偽第1カテゴリの少なくとも一つの対象を含むとマークされることとを含むことを実行する(506)。一部の実施例において、コンピューティングシステムは、トレーニングセットサーバ(例えば、図1Aのトレーニングセットサーバ120)を介して第1セットの新たなトレーニングデータを生成する。一部の実施例において、コンピューティングシステムは、画像歪み、反転、画像輝度調整、画像拡大などによって対応する画像のバリエーションを作成することにより、第1セットの画像における対応画像を補強する。画像補強によってトレーニングデータセットのサイズを拡大することにより、画像処理モデルをよりよくトレーニングして対象の検出及び分類を実行することができる。例えば、第1セットの画像における画像は、衣類タイプを含むとマークされ、第1画像処理モデルは、画像が「シャツ」を含むかどうかを検出するように設計されており、シャツが含まれない第1セットの画像のサブセットが、1つ前の推定スデップ期間中においてシャツを含むと誤って分類された。その結果、第1セットの画像のサブセットにおける画像は、いかなる以前の衣類ラベルと異なる特別なカテゴリラベル、例えば、「偽シャツ」を受け取ることになる。このカテゴリラベルは、これらの画像が誤分類されやすい対象を含むことを示す(第1画像処理モデルに偽陽性結果を発生させてしまう)。一部の実施例において、コンピューティングシステムは、トレーニングセットサーバを介して第1セットの画像のサブセットの旧いラベルを除去する。その結果、これらの画像は、衣類のタイプを含めず、新たな「偽カテゴリ」ラベルのみを含むとマークされる。
第1セットの新たなトレーニングデータを取得した後、コンピューティングシステムは、トレーニングモデルサーバ(例えば、図1Aのトレーニングモデルサーバ122)を介して少なくとも第1セットの新たなトレーニングデータを含むトレーニングデータセットによって第2画像処理モデルをトレーニングすることにより、対応する入力画像を、第1タイプの少なくとも一つの対象が含まれる画像に対する第1カテゴリと、第1タイプの少なくとも一つの対象が含まれない画像に対する第2カテゴリと、第1画像処理モデルによって第1カテゴリと誤分類されやすい対象が含まれる画像に対する偽第1カテゴリと、に分類する(508)。そのため、バイカテゴリ分類を実行するように設計される第1画像処理モデルと比べると、第2画像処理モデルは、画像が偽カテゴリの対象を含むと分類されること(例えば、第1画像処理モデルに偽陽性結果の対象を出力させること)に対応する付加の出力を有する。例えば、トレーニングデータセットは、「シャツ」を含むとマークされた画像、「シャツ」を含むとマークされていない画像(例えば、「靴下」、「ワンピース」などのみを含む画像)、及び「偽シャツ」を含むとマークされた画像を含んでもよい。注意すべきのは、第2トレーニングモデルにおける第1カテゴリ及び第2カテゴリは、第1トレーニングモデルにおける第1カテゴリ及び第2カテゴリと異なっており、これは、偽第1カテゴリに属した画像(例えば、第1トレーニングモデルに基づいて、第1カテゴリに含まれやすいものであるが実際に第2カテゴリに属した画像)を第1カテゴリ及び第2カテゴリに含まれないように第2トレーニングモデルがトレーニングされているためである。
最後に、コンピューティングシステムは電器サーバ(例えば、図1Cの電器機能制御ユニット153”’)を介して、第1のマシンによってキャプチャされた第1入力画像の第1推定結果に基づいて、第1マシンの機器設定を修正し、ここで、第1推定結果は、前記第2画像処理モデルによって生成され、かつ前記第1カテゴリに対応する(510)。例えば、コンピューティングシステムが洗濯機に積載された洗濯される衣類の画像が特定のタイプの衣類(例えば、シャツ)を含むと決定した場合、コンピューティングシステムは、検出された衣類タイプに基づいて洗濯循環を選択して、衣類への損傷を最小限に抑え、洗浄結果を最大化することができる。
一部の実施例において、第1マシンが前記第1入力画像におけるキャプチャされた対象に対して第1操作を実行する前に、コンピューティングシステムは、第1マシンにおいて第1入力画像をキャプチャし、ここで、機器設定は第1マシンによって実行される第1操作の設定である。例えば、第1マシンは洗濯機であり、第1操作は洗濯操作であり、機器設定は特定の洗濯循環設定である。洗濯機は、操作の前に、洗濯機に積載された洗濯される衣類の画像を撮影して衣類のタイプを決定し、適切な洗濯循環設定を選択することにより、それに応じて洗濯機を操作する。
一部の実施例において、複数の画像処理モデルが存在して、コンピューティングシステムは、異なる画像処理モデルを使用して異なるタイプの対象を検出して、異なる設定を適用する。コンピューティングシステムは、第4画像処理モデルをトレーニングして、対応する入力画像を第3カテゴリ、第4カテゴリまたは偽第3カテゴリに分類することに用いられ、当該第3カテゴリは、第1タイプと異なる第2タイプの少なくとも一つの対象が含まれる画像に対するものであり、当該第4カテゴリは第2タイプの少なくとも一つの対象が含まれない画像に対するものであり、当該偽第3カテゴリは第3画像処理モデルによって第3カテゴリと誤分類しやすい対象が含まれる画像に対するものであり、当該第3画像処理モデルは対応する入力画像を第3カテゴリ及び第4カテゴリだけに分類するようにトレーニングされ、且つ第1マシンによってキャプチャされた第1入力画像の第2推定結果に基づいて、第1マシンの異なる機器設定を修正し、ここで、第2推定結果は、第4画像処理モデルによって生成され、かつ第3カテゴリに対応する。例えば、洗濯機は1つの画像処理モデルを使用してシャツを分類して、もう一つの画像処理モデルを使用してジーンズを検出してもよい。シャツ及びジーンズの画像処理モデルは、いずれも以上で説明されたマルチパストレーニングプロセスを使用して改善されることができる。次に、コンピューティングシステムは、シャツとジーンズの存在の有無で洗濯循環設定を選択する。例えば、洗濯される衣類にシャツとジーンズが同時に存在する場合は、シャツのみの場合またはジーンズのみの場合より洗濯時間が長くなる可能性がある。
一部の実施例において、選択可能にまたは代替的に、補強された偽陰性サンプルはマークされ、新たなトレーニングデータにおける真陽性サンプルとマージする。その結果、新たな画像処理モデルは、偽陰性サンプルとして誤分類されやすいサンプルを分類するようにトレーニングされる。コンピューティングシステムは、第1画像処理モデルによって出力された複数の推定結果から推定結果の第2サブセットを識別し、当該推定結果の第2サブセットは偽陰性結果であり、当該偽陰性結果は、第1タイプの少なくとも1つの対象が含まれる第2セットの画像を第1タイプの少なくとも1つの対象が含まれない第2カテゴリに分類するものである。例えば、推定結果の第2サブセットは、シャツを含むが第1画像処理モデルによってシャツを含まないと分類される画像を含んでもよい。
推定結果の第2サブセットに基づいて、コンピューティングシステムは、第2セットの画像から第2セットの新たなトレーニングデータを生成することであって、第2セットの画像における対応画像を補強して第2の対応する複数の画像を取得することと、第2の対応する複数の画像を第1カテゴリの画像にマークすることとを含むこと、を実行する。例えば、コンピューティングシステムは、上記のような「偽カテゴリ」を作成するというのタスクに類似するタスクを実行してもよい。
次に、コンピューティングシステムは、第2の対応する複数の画像をトレーニングデータセットに追加して、第1画像処理モデルによって第1カテゴリに正しく分類された画像とともに、第1カテゴリに対応するトレーニング画像とする。例えば、シャツを検出するように設計された画像処理モデルの場合、トレーニングデータセットには(1)シャツを含む画像、(2)シャツ(「偽シャツ」)として誤分類されやすい対象を含む画像、(3)シャツでもなく、「偽シャツ」でもない対象を含む画像、及び(4)シャツであるがシャツではないと誤分類されやすい対象を含む画像の4つのタイプのデータが含まれる。
一部の実施例において、偽陽性結果がトレーニング期間で発生するとき、ユーザが偽陽性結果を識別する。従って、従来のモデルを有するネットワーク接続機器は、アップグレードの前にトレーニングデータセットに対して貢献することができる。コンピューティングシステムは、ユーザの入力を収集して、当該ユーザの入力は、第2のマシンが使用する第1画像処理モデルのコピーによって生成される付加の推定結果を偽陽性結果と識別し、及び第2のマシンにおいてキャプチャされた付加の推定結果に対応する画像をトレーニングデータセットに追加して、第2画像処理モデルをトレーニングする。
図6は一部の実施例による例示的な家電製品600の図である。例えば、様々な実施例において、家電製品600は、電器18、112、114、140、140’、200、201、202、203、204として用いられることができる。家電製品600は、一つまたは複数の処理ユニット(CPU)602、一つまたは複数のネットワークインターフェース604、メモリ606及びこれらのコンポーネント(時にはチップセットと称する)を相互接続するために用いられる一つまたは複数の通信バス608を含む。家電製品600は、ユーザインターフェース610をさらに含む。ユーザインターフェース610は、メディアコンテンツの提示を可能にする1つまたは複数の出力デバイス612を含み、前記出力デバイスが1つまたは複数のスピーカーおよび/または1つまたは複数の視覚ディスプレイを含む。ユーザインターフェース610は、1つまたは複数の入力デバイス614をさらに含み、ユーザの入力を容易にするユーザインターフェースコンポーネント、例えば、キーボード、マウス、音声コマンド入力ユニットまたはマイク、タッチスクリーンディスプレイ、タッチセンシティブ入力パッド、ジェスチャーキャプチャカメラ、またはその他の入力ボタンやコントタンブリングなどのを含む。一部の実施例において、家電600は、家電製品600の操作環境情報を感知するセンサ(例えば、センサ141、142)をさらに含む。センサには、1つ又は複数の熱センサ、光センサ、1つ又は複数のカメラ、湿度センサ、1つ又は複数の運動センサ、1つ又は複数の生物学センサ(例えば、皮膚電気抵抗センサ、パルス酸素計など)、重量センサ、分光器、および他のセンサが含まれるが、これらに限定されない。さらに、家電製品600は、家電製品操作ユニット626(例えば、電気、誘導、ガス、放射などに基づく加熱装置)を含む。メモリ606は、不揮発性メモリ、例えば、1つまたは複数の磁気ディスク記憶装置、1つまたは複数の光ディスク記憶装置、1つまたは複数のフラッシュメモリデバイス、または1つまたは複数の他の不揮発性ソリッドステートストレージデバイスなどを含む。選択可能に、メモリ606は、1つまたは複数の処理ユニット602から遠隔に配置された1つまたは複数のストレージデバイスを含む。メモリ606、または選択可能に、メモリ606における不揮発性メモリは、非一時的なコンピュータ可読記憶媒体を含む。一部の実施例において、メモリ606、またはメモリ606の非一時的なコンピュータ可読記憶媒体は、
オペレーティングシステム616であって、様々な基本システムサービスを処理ためのプロセス及びハードウェア関連タスクを実行するためのプロセスを含むオペレーティングシステム616と、
ネットワーク通信モジュール618であって、1つまたは複数のネットワークインターフェース604(有線または無線)を介して外部サービスに接続するように構成されるネットワーク通信モジュール618と、
提示モジュール620であって、情報の提示を実現するように構成される提示モジュール620と、
入力処理モジュール622であって、1つまたは複数の入力デバイス614のうちの1つの入力デバイスから、1つまたは複数のユーザ入力またはインタラクションを検出し、検出された入力またはインタラクションを解釈するように構成される入力処理モジュール622と、。
家電製品制御ユニット624であって、家電製品600を制御し、本開示に記載された家電製品140または140’のモジュールを含むがこれらに限定されない家電製品制御ユニット624と、
のプログラム、モジュール、およびデータ構造、またはそのサブセットやスーパーセットを記憶する。
上記のように識別された各素子は、上記1つまたは複数のメモリデバイスに記憶され、且つ上記機能を実行するための命令セットに対応してもよい。上記で識別されたモジュールまたはプログラム(すなわち、命令セット)は、単独のソフトウェアプログラム、プロセス、モジュール、またはデータ構造として実現される必要がないので、これらのモジュールの各サブセットが各実施例において組み合わせ又は他の方式で改めて配列されてもよい。一部の実施例において、選択可能に、メモリ606は、上記で識別されたモジュールおよびデータ構造のサブセットを記憶する。さらに、選択可能に、メモリ606は、上記で説明されていない付加のモジュールおよびデータ構造を記憶する。
上記は特定の実施例を説明したが、本願をこれらの特定の実施例に限定することを意図するものではないことが理解されるべきである。逆に、本願は、提示された請求項の精神及び範囲内の代替、修正および対等物を含む。本明細書に説明されるテーマに対する完全な理解を提供するために具体的な詳細が多く記載されている。しかしこれらの特定の詳細なしで本テーマを他の実施例に実施され得ることは当業者には明らかである、本開示は不要に当実施例の各方面を曖昧にしないように、周知の方法、プロセス、コンポーネント、および回路を詳しく説明していない。
100 家電製品システムの操作環境
110 電器A
111 ユーザデバイスA
112 電器B
113 ユーザデバイスB
114 電器C
115 ユーザデバイスC
120 トレーニングセットサーバ
122 トレーニングモデルサーバ
128 アノテーションステーション
129 推定結果セットサーバ
190 ネットワーク

Claims (9)

  1. 一つまたは複数のプロセッサ及びメモリを有するコンピューティングデバイスにおいて、
    第1画像処理モデルを受信することであって、前記第1画像処理モデルは対応する入力画像を第1カテゴリまたは第2カテゴリに分類するようにトレーニングされ、前記第1カテゴリは、第1タイプの少なくとも一つの対象が含まれる画像に対するものであり、前記第2カテゴリは、前記第1タイプの少なくとも一つの対象が含まれない画像に対するものであることと、
    前記第1画像処理モデルが出力した複数の推定結果から、偽陽性結果としての推定結果の第1サブセットを識別し、前記偽陽性結果は、第1タイプの少なくとも一つの対象が含まれない第1セットの画像を前記第1タイプの少なくとも一つの対象が含まれる画像に対する前記第1カテゴリに分類するものであることと、
    前記第1セットの画像から第1セットの新たなトレーニングデータを生成することであって、前記第1セットの画像における対応画像を補強して第1の対応する複数の画像を取得することと、前記第1の対応する複数の画像が偽第1カテゴリの少なくとも一つの対象を含むとマークされることとを含み、前記偽第1カテゴリは、前記第1カテゴリ及び前記第2カテゴリと異なることと、
    少なくとも前記第1セットの新たなトレーニングデータが含まれるトレーニングデータ集合によって第2画像処理モデルをトレーニングすることにより、対応する入力画像を、前記第1タイプの少なくとも一つの対象が含まれる画像に対する前記第1カテゴリと、前記第1タイプの少なくとも一つの対象が含まれない画像に対する前記第2カテゴリと、前記第1画像処理モデルによって前記第1カテゴリと誤分類されやすい対象が含まれる画像に対する前記偽第1カテゴリと、に分類することと、
    第1マシンによってキャプチャされた第1入力画像の第1推定結果に基づいて、前記第1マシンの機器設定を修正することであって、前記第1推定結果は、前記第2画像処理モデルによって生成され、かつ前記第1カテゴリに対応することと、を含む方法。
  2. 前記第1マシンが前記第1入力画像におけるキャプチャされた対象に対して第1操作を実行する前に、前記第1マシンにおいて前記第1入力画像をキャプチャすることであって、前記機器設定は前記第1マシンによって実行される前記第1操作の設定であること、を含む
    請求項1に記載の方法。
  3. 第4画像処理モデルをトレーニングすることであって、前記第4画像処理モデルは、対応する入力画像を第3カテゴリ、第4カテゴリまたは偽第3カテゴリに分類することに用いられ、前記第3カテゴリは、前記第1タイプとは異なる第2タイプの少なくとも一つの対象が含まれる画像に対するものであり、前記第4カテゴリは前記第2タイプの少なくとも一つの対象が含まれない画像に対するものであり、前記偽第3カテゴリは第3画像処理モデルによって前記第3カテゴリと誤分類しやすい対象が含まれる画像に対するものであり、前記第3画像処理モデルは前記対応する入力画像を前記第3カテゴリ及び前記第4カテゴリだけに分類するようにトレーニングされることと、
    前記第1マシンによってキャプチャされた第1入力画像の第2推定結果に基づいて、前記第1マシンの異なる機器設定を修正することであって、前記第2推定結果は、前記第4画像処理モデルによって生成され、かつ前記第3カテゴリに対応することと、を含む
    請求項1に記載の方法。
  4. 前記第1画像処理モデルによって出力された複数の推定結果から推定結果の第2サブセットを識別し、前記推定結果の第2サブセットは偽陰性結果であり、前記偽陰性結果は、前記第1タイプの少なくとも一つの対象が含まれる第2セットの画像を前記第1タイプの少なくとも一つの対象が含まれない画像に対する前記第2カテゴリに分類するものであることと、
    前記第2セットの画像から第2セットの新たなトレーニングデータを生成することであって、前記第2セットの画像における対応画像を補強して第2の対応する複数の画像を取得することと、前記第2の対応する複数の画像を前記第1カテゴリの画像にマークすることとを含むことと、
    前記第2の対応する複数の画像を、トレーニングデータ集合に追加して、前記第1画像処理モデルによって前記第1カテゴリに正しく分類された画像とともに前記第1カテゴリに対応するトレーニング画像とすることと、を含む
    請求項1に記載の方法。
  5. 前記第1画像処理モデルによって出力された前記複数の推定結果から推定結果の第3サブセットを識別し、前記第3サブセットは前記第1タイプの少なくとも一つの対象が含まれない第3セット画像を前記第2カテゴリに分類する真陰性結果であることと、
    推定結果に対応する前記第3サブセットの画像を前記トレーニングデータ集合に追加して前記第2カテゴリに対応するトレーニング画像とすることと、を含む
    請求項4に記載の方法。
  6. ユーザの入力を収集することであって、前記ユーザの入力は、第2マシンが使用する前記第1画像処理モデルのコピーによって生成される付加の推定結果を偽陽性結果と識別することと、
    前記第2マシンにおいてキャプチャされた前記付加の推定結果に対応する対応画像を前記トレーニングデータ集合に追加して、前記第2画像処理モデルのトレーニングに用いられることと、を含む
    請求項1に記載の方法。
  7. 第1サーバにおいて前記第1画像処理モデル及び前記第2画像処理モデルをトレーニングし、第2サーバにおいて前記第1セットの新たなトレーニングデータを生成し、第3サーバにおいて前記第2画像処理モデルによって前記第1推定結果を生成し、前記第1サーバ、前記第2サーバ及び前記第3サーバはネットワークによって接続される
    請求項1に記載の方法。
  8. コンピューティングデバイスであって、
    一つまたは複数のプロセッサと、
    前記一つまたは複数のプロセッサによって実行されるとき、前記プロセッサに請求項1~7のいずれか1項に記載の方法を実現させる命令を記憶するメモリと、
    コンピューティングデバイス。
  9. 命令を記憶するコンピュータ可読記憶媒体であって、
    前記命令が一つまたは複数のプロセッサによって実行されるとき、前記プロセッサに請求項1~7のいずれか1項に記載の方法を実現させる
    コンピュータ可読記憶媒体。
JP2022522696A 2019-10-18 2020-09-29 目標検出モデルのマルチパストレーニングによる機器設定の調整 Active JP7239782B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/657,975 2019-10-18
US16/657,975 US11120311B2 (en) 2019-10-18 2019-10-18 Adjusting machine settings through multi-pass training of object detection models
PCT/CN2020/119069 WO2021073429A1 (en) 2019-10-18 2020-09-29 Adjusting machine settings through multi-pass training of object detection models

Publications (2)

Publication Number Publication Date
JP2022552383A true JP2022552383A (ja) 2022-12-15
JP7239782B2 JP7239782B2 (ja) 2023-03-14

Family

ID=75492427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022522696A Active JP7239782B2 (ja) 2019-10-18 2020-09-29 目標検出モデルのマルチパストレーニングによる機器設定の調整

Country Status (5)

Country Link
US (1) US11120311B2 (ja)
EP (1) EP4025733A4 (ja)
JP (1) JP7239782B2 (ja)
CN (1) CN114600167A (ja)
WO (1) WO2021073429A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220239521A1 (en) * 2017-01-24 2022-07-28 Electrolux Appliances Aktiebolag Method for data communication with a domestic appliance by a mobile computer device, mobile computer device and domestic appliance
US11321618B2 (en) * 2018-04-25 2022-05-03 Om Digital Solutions Corporation Learning device, image pickup apparatus, image processing device, learning method, non-transient computer-readable recording medium for recording learning program, display control method and inference model manufacturing method
CN110399804A (zh) * 2019-07-01 2019-11-01 浙江师范大学 一种基于深度学习的食品检测识别方法
KR20210054796A (ko) * 2019-11-06 2021-05-14 엘지전자 주식회사 지능형 디바이스의 도어 오픈 모니터링
US20210390424A1 (en) * 2020-06-10 2021-12-16 At&T Intellectual Property I, L.P. Categorical inference for training a machine learning model
US20220335258A1 (en) * 2021-04-16 2022-10-20 Toyota Research Institute, Inc. Systems and methods for dataset and model management for multi-modal auto-labeling and active learning
US20240069516A1 (en) * 2022-08-31 2024-02-29 University Of Central Florida Research Foundation, Inc. Audiovisual Detection of Expectation Violations in Disparate Home Automation Systems
US11955272B1 (en) * 2022-11-10 2024-04-09 Superb Ai Co., Ltd. Method for generating object detector based on deep learning capable of detecting extended object class and detector generation device using the same

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015222138A (ja) * 2014-05-22 2015-12-10 三菱電機株式会社 冷蔵庫及びネットワークシステム
JP2016151805A (ja) * 2015-02-16 2016-08-22 大日本印刷株式会社 オブジェクト検出装置、オブジェクト検出方法、及びプログラム
JP2019168134A (ja) * 2018-03-22 2019-10-03 三菱電機株式会社 冷蔵庫システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7587064B2 (en) * 2004-02-03 2009-09-08 Hrl Laboratories, Llc Active learning system for object fingerprinting
US7996339B2 (en) 2004-09-17 2011-08-09 International Business Machines Corporation Method and system for generating object classification models
JP4743312B2 (ja) * 2009-07-29 2011-08-10 株式会社デンソー 画像識別装置
US9082403B2 (en) 2011-12-15 2015-07-14 Microsoft Technology Licensing, Llc Spoken utterance classification training for a speech recognition system
EP2672396A1 (en) * 2012-06-08 2013-12-11 ETH Zürich Method for annotating images
CN103971342B (zh) 2014-05-21 2017-11-03 厦门美图之家科技有限公司 一种基于卷积神经网络的图像噪点检测方法
US10909313B2 (en) * 2016-06-22 2021-02-02 Sas Institute Inc. Personalized summary generation of data visualizations
GB2554435B (en) * 2016-09-27 2019-10-23 Univ Leicester Image processing
DE102017209857A1 (de) * 2017-06-12 2018-12-13 Henkel Ag & Co. Kgaa Erkennung einer Verunreinigung und/oder einer Eigenschaft zumindest eines Teils einer Textilie
US10563338B2 (en) 2017-12-04 2020-02-18 Midea Group Co., Ltd. Personalized laundry appliance
CN109811508A (zh) 2019-01-24 2019-05-28 深圳市赛亿科技开发有限公司 一种根据衣物材质分类洗涤的智能洗衣机控制方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015222138A (ja) * 2014-05-22 2015-12-10 三菱電機株式会社 冷蔵庫及びネットワークシステム
JP2016151805A (ja) * 2015-02-16 2016-08-22 大日本印刷株式会社 オブジェクト検出装置、オブジェクト検出方法、及びプログラム
JP2019168134A (ja) * 2018-03-22 2019-10-03 三菱電機株式会社 冷蔵庫システム

Also Published As

Publication number Publication date
EP4025733A4 (en) 2022-11-16
US11120311B2 (en) 2021-09-14
WO2021073429A1 (en) 2021-04-22
CN114600167A (zh) 2022-06-07
EP4025733A1 (en) 2022-07-13
US20210117717A1 (en) 2021-04-22
JP7239782B2 (ja) 2023-03-14

Similar Documents

Publication Publication Date Title
JP7239782B2 (ja) 目標検出モデルのマルチパストレーニングによる機器設定の調整
US11048976B2 (en) Method and system for controlling machines based on object recognition
KR102329592B1 (ko) 재료 인식을 기반으로 하는 음식 준비 방법 및 시스템
CN105353634B (zh) 利用手势识别控制操作的家电设备与方法
CN109643448A (zh) 机器人系统中的细粒度物体识别
WO2019109785A1 (en) Personalized laundry appliance
KR20170138559A (ko) 세탁기 제어 방법 및 세탁기
CN107354662A (zh) 衣物处理装置及其控制方法、装置和计算机可读存储介质
CN110488672B (zh) 烹饪设备的控制方法、装置、烹饪设备和存储介质
CN106676821B (zh) 一种自动选择洗衣模式的方法及终端
WO2019036974A1 (zh) 一种智能洗涤方法及洗衣机
CN110894658A (zh) 洗涤控制方法、装置以及衣物处理装置
JP2019219766A (ja) 分析装置、分析システム、及び分析プログラム
US11790041B2 (en) Method and system for reducing false positives in object detection neural networks caused by novel objects
KR102557678B1 (ko) 서버, 가전 기기 및 이의 정보 제공 방법
CN113622144B (zh) 洗衣控制方法、系统、洗衣机及计算机可读存储介质
US11447905B2 (en) Clothing management apparatus and method for controlling thereof
CN212846839U (zh) 织品信息媒合系统
JP7270628B2 (ja) 衣類情報管理システム及びその制御方法
CN110794704A (zh) 烹饪参数的确定方法、烹饪装置以及计算机存储介质
US20240133101A1 (en) Electronic device for mapping identification information and custom information, and control method thereof
CN110173866B (zh) 空调器的智能送风方法及装置、空调器
US20210110162A1 (en) Operation sequence identification device, operation sequence identification system, operation sequence identification method, and non-transitory computer-readable recording medium
CN117689920A (zh) 挂烫机熨烫方法、装置、挂烫机、存储介质及电子装置
CN114381896A (zh) 洗衣控制方法、装置、洗衣机及存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220414

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220414

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230302

R150 Certificate of patent or registration of utility model

Ref document number: 7239782

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150