用於噪聲環境的語音檢測系統的製作方法
2023-05-05 23:07:41 1
專利名稱:用於噪聲環境的語音檢測系統的製作方法
技術領域:
本發明一般涉及語音處理和語音識別系統。更確切地說,本發明涉及用於檢測輸入信號內語音開始和語音結束的檢測系統。
目前,用於語音識別和其他目的的自動語音處理是計算機能夠進行的最具挑戰性的任務之一。例如,語音識別採用對變化非常敏感的高度複雜的模式匹配技術。在用戶應用中,識別系統需要處理各種各樣的不同發言者,並且需要在各種互不相同的環境下運行。無關信號和噪聲的出現可能嚴重降低識別質量和語音處理性能。
大部分自動語音識別系統按如下方式工作,首先建立聲音模式的模型,然後使用該模式確定音素,字母,最後確定單詞。對於精確識別而言,排除實際語音之前或之後的所有無關聲音(噪聲)是非常重要的。存在一些檢測語音開始和語音結束的公知技術,儘管還有許多地方需要改進。
本發明將輸入信號劃分為各種頻帶,各頻帶代表不同的頻率範圍。然後將各頻帶內的短期能量與若干閾值進行比較,並利用比較結果驅動狀態機,當至少某個頻帶的限帶信號能量高於該頻帶的至少一個有關閾值時,狀態機就從「無語音」狀態切換到「有語音」狀態。同樣,當至少某個頻帶的限帶信號能量低於該頻帶的至少一個有關閾值時,狀態機就從「有語音」狀態切換到「無語音」狀態。該系統還包括一個基於實際語音開始之前的「無聲段」假設的局部語音檢測機制。
直方圖數據結構累加與各頻帶內的能量均值和方差有關的長期數據,該信息用於調整自適應閾值。根據噪聲特徵分配頻帶。直方圖表示能夠明顯區分語音信號、無聲和噪聲。在語音信號內,無聲部分(僅有背景噪聲)通常佔主導地位,並且在直方圖上有明顯反映。相比為常量的背景噪聲,在直方圖上表示為明顯峰值。
本系統非常適用於噪聲環境中的語音檢測,該系統檢測語音的開始和結束並處理經過截短而丟失語音開始的情況。
參照以下詳細說明書和附圖,將更加理解本發明,其目的以及其優點。
圖1為本發明之最佳實施方式(2頻帶實施方式)中語音檢測系統的框圖;圖2為用於調整自適應閾值的系統的詳細框圖;圖3為局部語音檢測系統的框圖;圖4表示本發明的語音信號狀態機;圖5表示用於理解本發明的典型直方圖;圖6為一個波形圖,該圖表示為進行語音檢測而比較信號能量時所使用的若干閾值;圖7為一個波形圖,該圖表示為避免錯誤檢測強噪聲脈衝而使用的開始語音延遲檢測機制;圖8為一個波形圖,該圖表示為允許連續語音內的停頓而使用的結束語音延遲判定機制;圖9A為表示局部語音檢測機制的一方面的波形圖;圖9B為表示局部語音檢測機制的另一方面的波形圖;圖10為一組波形圖,該圖表示為了選擇與有語音狀態相對應的最終範圍,如何綜合多頻帶閾值分析;圖11表示出現強噪聲時使用S閾值的波形圖;以及圖12表示當自適應閾值適應背景噪聲電平時,自適應閾值的性能。
本發明將輸入信號劃分為多個信號路徑,各路徑代表一個不同頻帶。圖1表示採用兩頻帶實施方式的本發明的實施方式,一個頻帶表示輸入信號的總頻譜,另一頻帶表示總頻譜的高頻子集。所示實施方式特別適用於檢測具有較低信噪比(SNR)的輸入信號,如在正在行駛的汽車內或噪雜的辦公環境中所獲得的信號。在以上常見環境中,大部分噪聲能量分布在2,000Hz以下。
儘管本文說明了兩頻帶系統,可以將本發明輕易擴展為其他多頻帶結構。通常,各頻帶覆蓋不同的頻率範圍,其目的是從噪聲中分離信號(語音)。本實施方式為數字式。當然,也可以利用本文包含的詳細說明實現模擬實施方式。
參照圖1,在20提供包含潛在語音信號和噪聲的輸入信號。利用漢明窗口22數位化處理輸入信號,以便將輸入信號數據劃分為幀。本發明之最佳實施方式採用時長為10ms的預定採樣頻率(8,000Hz情況下)的幀,每幀80個數字採樣。所示系統被設計成能夠在其頻率範圍為300Hz到3,400Hz的輸入信號下運行。因此,選擇採樣頻率為頻率上限的兩倍(2×4,000=8,000)。如果在輸入信號的信息傳送部件中發現不同頻譜,就適當調整採樣頻率和頻帶。
漢明窗口22的輸出為表示輸入信號(語音和噪聲)的數字採樣序列,並且將其排列為預定尺寸的幀。隨後將以上各幀饋入到快速傅立葉變換(FFT)變換器24,後者將輸入信號數據從時域變換到頻域。此時,將該信號分裂為若干路徑,位於26的第一路徑和位於28的第二路徑。第一路徑表示包含輸入信號所有頻率的頻帶,而第二路徑28表示輸入信號總頻譜的高頻子集。由於利用數字數據表示頻域含量,所以分別利用累加部件30和32實現頻帶分裂。
請注意,累加部件30累加範圍10-108內的頻譜分量;而累加部件32累加範圍64-108內的頻譜分量。這樣,累加部件30選擇輸入信號內的所有頻率,而部件32僅選擇高頻頻帶。此時,部件32抽取部件30所選頻帶的一個子集。這正是檢測通常在行駛的汽車內或噪雜的辦公室中所獲得的噪聲輸入信號中語音含量的最佳實施方式。其他噪聲環境可以規定其他頻帶分裂方式。例如,如果需要,可以配置若干信號路徑以覆蓋各個非重疊頻帶和部分重疊頻帶。
累加部件30和32每次累加一幀的頻率分量。因此,部件30和32的結果輸出表示信號內的限帶短期能量。如果需要,可以經過平滑濾波器,如濾波器34和36,傳送原始數據。在本發明的最佳實施方式中,採用3-抽頭平均器作為兩處的平滑濾波器。
正如下文中將要更加全面說明的那樣,根據若干受限頻帶短期能量與若干閾值的比較,進行語音檢測。根據與講話前之無聲部分(假設在系統運行後但在發言者開始發言之間,出現無聲部分)有關的能量的長期平均值與方差,自適應更新以上閾值。以上實施方式採用直方圖數據結構生成自適應閾值。在圖1中,組合框38和40分別表示信號路徑26和28的自適應閾值更新部件。將結合圖2和有關波形圖,提供以上部件的細節。
儘管沿快速傅立葉變換部件24的下行方向保持不同的信號路徑,各通過自適應閾值更新部件38和40,但有關輸入信號中有無語音的最終決定是同時考慮兩條信號路徑產生的。因此,語音狀態檢測部件42以及與其有關的局部語音檢測部件44從兩條路徑26和28考慮信號能量數據。語音狀態部件42實現將在圖4中進一步說明其細節的狀態機。圖3更詳細地說明了局部語音檢測部件。
現在參照圖2,以下將說明自適應閾值更新部件38。本發明的最佳實施方式對各頻帶採用3個不同閾值。因此,在所示實施方式中,共有6個閾值。通過考慮波形圖以及其有關論述,各閾值的目的將變得更加顯而易見。對各能量頻帶,確定3個閾值Threshold,WThreshold和SThreshold。第一閾值Threshold為用於檢測語音開始的基本閾值。WThreshold為用於檢測語音結束的弱閾值。SThreshold為用於評估語音檢測判定之有效性的強閾值。以上閾值的更正式的定義為Threshold=Noise_Level+OffsetWThreshold=Noise_Level+Offset*R1;(R1=0.2..1,這裡最好為0.5)SThreshold=Noise_Level+Offset*R2;(R2=1..4,這裡最好為2)其中Noise_Level為長期平均值,即直方圖中所有過去的輸入能量的最大值。
Offset=Noise_Level*R3+Variance*R4;(R3=0.2..1,這裡最好為0.5;R4=2..4,這裡最好為4)。
Variance為短期方差,即M個剛剛過去的輸入幀的方差。
圖6表示疊加在某個典型信號上的3個閾值之間的關係。請注意,SThreshold高於Threshold,而WThreshold通常低於Threshold。以上閾值以噪聲電平為基礎,利用直方圖數據結構確定輸入信號的講話前的無聲部分中包含的所有過去輸入的能量的最大值。圖5表示疊加在某個波形上的典型直方圖,該波形表示典型噪聲電平。該直方圖記錄講話前無聲部分包含預定噪聲電平能量的次數的「計數」。從而直方圖作為能量電平的函數(在x軸上)繪製計數(在y軸上)。請注意,在圖5所示的示例中,最普通的(最大計數)噪聲電平能量具有能量值Ea。值Ea將與預定噪聲電平能量相對應。
直方圖(圖5)中記錄的噪聲電平能量數據是從輸入信號的講話前的無聲部分中抽取的。關於這一點,假設提供輸入信號的音頻通道是有效的,並且在實際講話開始之前向語音檢測系統發送數據。因此,在講話前的無聲部分,系統正在對環境噪聲電平本身的能量特徵進行有效採樣。
本發明的最佳實施方式採用固定尺寸的直方圖,以便降低計算機存儲需求。正確配置直方圖數據結構能夠提供精度估計要求(意味著小的直方圖步長)與寬闊動態範圍(意味著大的直方圖步長)之間的折衷。為了解決精度估計(小的直方圖步長)與寬闊動態範圍(大的直方圖步長)之間的衝突,本系統根據實際操作環境,自適應地調整直方圖步長。以下偽碼說明了在調整直方圖步長大小時所採用的算法,其中M為步長大小(表示各直方圖步長中能量值的範圍)。
自適應直方圖步長的偽碼在初始化步驟之後計算緩衝區內過去各幀的平均值M=前一所述平均值的十分之一If(M<MIN_HISTOGRAM_STEP)
M=MIN_HISTOGRAM_STEPEnd請注意,在上述偽碼中,根據開始時在初始化步驟中放入緩衝區的假設無聲部分的平均值,修改直方圖步長M。這裡,假設所述平均值能夠表現實際背景的噪聲環境。請注意,直方圖步長以MIN_HISTOGRAM_STEP為下界。此後,固定直方圖步長。
通過為各幀插入一個新值來更新直方圖。為了適應緩慢變化的背景噪聲,每10幀引入一個遺忘因子(在本實施方式中為0.90)。
用於更新直方圖的偽碼現在參照圖2,圖2表示自適應閾值更新機制的基本框圖。該框圖表示部件38和40(圖1)所執行的操作。在更新緩衝器50中存儲短期(當前數據)能量,部件52按上述方式使用該能量以便更新直方圖數據結構。
隨後,由部件54檢查更新緩衝器,部件54計算緩衝器50中所存儲的剛剛過去的若干數據幀的方差。
期間,部件56確定該直方圖內的最大能量值(即圖5中的值Ea),並將該值提供給閾值更新部件58。閾值更新部件利用以上最大能量值以及來自部件54的統計數據(方差)修改主要閾值Threshold。如上所述,Threshold等於噪聲電平與預定偏移量之和。偏移量以利用直方圖中的最大值所確定的噪聲電平和部件54所提供的方差為基礎。按照上面所列方程,根據Threshold計算剩餘閾值,即WThreshold和SThreshold。
在正常操作中,通常經過跟蹤講話前的信號部分內的噪聲電平,自適應調整閾值。圖12說明以上概念。在圖12中,100表示講話前的信號部分,200表示開始講話。已經將Threshold電平疊加到該波形中。請注意,以上閾值電平跟蹤講話前的信號部分內的噪聲電平,外加一個偏移量。因此,應用於某個給定講話範圍的Threshold(以及SThreshold和WThreshold)為以下閾值,即剛開始講話前的實際閾值。
現在回到圖1,以下將說明語音狀態檢測和局部語音檢測部件42和44。根據當前幀以及當前幀後面的某幾幀進行有語音/無語音判定,而不是根據某個數據幀進行判定。就檢測語音開始而言,考慮當前幀後面的附加幀(超前)避免了出現短暫但卻是強噪聲脈衝時,如電脈衝,的錯誤檢測。就檢測語音結束而言,幀超前防止連續語音信號中的暫停或短暫無聲造成的語音結束的錯誤檢測。通過在更新緩衝器50(圖2)中緩衝數據並採用以下偽碼所描述的處理,實現以上延遲判定或超前策略。
語音開始測試開始延遲判定=FALSELoop M個順序幀(M=3;30ms)If Energy_All>Threshold或Energy_HPF>ThresholdThen 開始延遲判定=TRUE語音結束測試結束延遲判定=FALSELoop N個順序幀(N=30;300ms)If Energy_All<Threshold與Energy_HPF<Threshold
Then結束延遲判定=TRUEEnd of Loop參見圖7,圖7表示語音開始測試中30ms的延遲是如何避免錯誤檢測超過閾值的噪聲峰值110的。同時參見圖8,圖8表示語音結束測試中300ms的延遲是如何防止語音信號中的短暫暫停120觸發語音結束狀態的。
上述偽碼設置了兩個標記,開始延遲判定標記和結束延遲判定標記。圖4所示的語音信號狀態機使用以上標記。請注意,語音開始使用30ms的延遲,相當於3幀(M=3)。通常該延遲足以篩去由於短暫噪聲峰值而造成的錯誤檢測。語音結束使用較長的延遲,相當於300ms,業已證明該延遲足以處理連續語音中的出現的正常暫停。300ms延遲相當於30幀(N=30)。為了避免語音信號消波或削波而造成的誤差,可以根據檢測的語音開始與語音結束的語音部分,利用附加幀填充以上數據。
語音開始檢測算法假設講話前存在至少某個指定的最小長度的無聲部分。實際上,某些時候以上假設可能無效,如由於信號漏失或電路切換突變而消波輸入信號,從而縮短或消除假定的「無聲段」。當出現以上情況時,可能會錯誤更新閾值,這是由於該閾值是以噪聲電平能量為基礎,利用無語音信號估計的。此外,當消波輸入信號,從而該信號不包含無聲段時,語音檢測系統可能不能識別該輸入信號包含語音,或許丟失輸入階段的語音,從而使隨後的語音處理無效。
為了避免局部語音狀態,採用圖3所示的或非策略。圖3表示局部語音檢測部件44(圖1)所採用的機制。局部語音檢測機制通過監視閾值(Threshold)確定自適應閾值電平是否存在瞬時跳變而起作用。跳變檢測部件60首先通過累加表示一連串幀的閾值變化的某個值,完成以上分析。產生累加閾值變化Δ的部件62完成該步處理。在部件64,比較累加閾值變化Δ與某個預定絕對值Athrd,並且根據Δ是否大於Athrd,經由分支66或分支68繼續該處理。如果Δ小於Athrd,就激活部件70(否則,激活部件72)。部件70和72保持獨立平均閾值。部件70保持並更新閾值T1,T1表示所測跳變之前的閾值,部件72保持並更新閾值T2,T2表示跳變之後的閾值。隨後在部件74,將兩個閾值之比率(T1/T2)與第三閾值Rthrd進行比較。如果以上比率大於第三閾值,則設置ValidSpeech(有效語音)標記。圖4的語音信號狀態機使用ValidSpeech標記。
圖9A和9B表示運轉中的部分語音檢測機制。圖9A表示採取Yes分支68(圖3)的狀態,而圖9B表示採取No分支66的狀態。參照圖9A,請注意,從150到160存在閾值跳變。在所示示例中,該跳變大於絕對值Athrd。在圖9B中,從152到162的閾值跳變表示並不大於Athrd的跳變。在圖9A和9B中,虛線170表示跳變位置。T1表示跳變位置之前的平均閾值,T2表示跳變位置後的平均閾值。隨後比較比率T1/T2與比率閾值Rthrd(圖3中框74)。按下述方式,僅從講話前範圍內的雜散噪聲中區分ValidSpeech。如果閾值跳變小於Athrd,或者比率T1/T2小於Rthrd,就將引起閾值跳變的信號識別為噪聲。另一方面,如果比率T1/T2大於Rthrd,就將引起閾值跳變的信號看作部分語音,但不用來更新閾值。
現在參照圖4,300表示的語音信號狀態機啟動初始化狀態310。隨後轉到無聲狀態320,語音信號狀態機保持在無聲狀態320直到在無聲狀態執行的步驟確定要轉到語音狀態330。一旦進入語音狀態330,當滿足某些條件時,如語音狀態框330所示步驟所指示的那樣,狀態機將轉回到無聲狀態320。
在初始化狀態310,在緩衝器50(圖2)中存儲數據幀,並且更新直方圖步長的大小。我們記得最佳實施方式利用額定步長大小M=20開始運行。根據上面提供的偽碼所述,在初始化狀態期間可以修改步長的大小。此外,在初始化狀態期間,初始化直方圖數據結構,以便刪除早期操作的所有預先存儲數據。執行完這些步驟後,狀態機轉到無聲狀態320。
在無聲狀態內,比較各受限頻帶短期能量值與基礎閾值Threshold。如上所述,各信號路徑具有其特有的閾值集。在圖4中,Threshold_All表示適用於信號路徑26(圖1)的閾值,而Threshold_HPF表示適用於信號路徑28的閾值。對於語音狀態330中採用的其他閾值,使用類似名稱。
如果任一短期能量值超過其本身的閾值,就測試開始延遲判定標記。如上所述,如果已經將該標記設置為TRUE,就返回語音開始消息,並且狀態機轉到語音狀態330。反之,狀態機保持無聲狀態,並且更新直方圖數據結構。
本發明之最佳實施方式利用遺忘因子0.99更新直方圖,以使非當前數據的影響隨時間推移消失。通過在累加與當前幀能量有關的Count(計數)數據之前用0.99乘直方圖中的現有數據,完成以上處理。這樣,歷史數據的影響隨時間推移逐漸消失。
沿類似路徑繼續語音狀態330內的處理,儘管使用不同的閾值集。語音狀態把信號路徑26和28內的有關能量同WThreshold比較。如果任一信號路徑大於WThreshold,則與SThreshold進行類似比較。如果任一信號路徑中的能量大於SThreshold,則將ValidSpeech標記設置為TRUE。在隨後的比較步驟中使用該標記。
如上所述,如果預先將結束延遲判定標記設置為TRUE,並且如果已經將ValidSpeech標記設置為TRUE,則返回結束語音消息,並且狀態機返回到無聲狀態320。另一方面,如果並未將ValidSpeech標記設置為TRUE,則發送消息以便取消前述語音檢測,並且狀態機返回到無聲狀態320。
圖10和圖11表示不同電平如何影響狀態機的操作。圖10比較兩條路徑,即全頻頻帶Band_All和高頻頻帶Band_HPF,的並發操作。請注意,由於信號波形包含不同的頻譜,所以其信號波形不同。在所示示例中,識別為被檢測語音的最終範圍對應於b1處閾值與全頻頻帶相交所產生的語音開始,而語音結束對應於高頻頻帶在e2處的相交點。當然,根據圖4所描述的算法,不同輸入波形將產生不同結果。
圖11表示在出現強噪聲電平時,如何使用強閾值SThreshold來證實存在ValidSpeech。如圖所示,區域R表示低於SThreshold的強噪聲,該區域對應於將ValidSpeech標記設置為FALSE的區域。
根據上述說明可以理解,本發明提供一種檢測輸入信號內語音開始和語音結束的系統,解決了用戶在噪聲環境中應用時遇到的許多問題。儘管以本發明之最佳實施方式說明了本發明,然而可以理解的是,在不背離權利要求書所規定之發明實質下,可以對本發明作某些修改。
權利要求
1.用於檢測輸入信號以確定有無語音信號的語音檢測系統,該系統包括一個頻帶分裂器,用於將所述輸入信號分裂為若干頻帶,各頻帶表示與不同頻率範圍相對應的限帶信號能量;一個能量比較系統,用於把所述若干頻帶的限帶信號能量同若干閾值比較,從而把各頻帶同至少一個與該頻帶有關的閾值比較;以及一個與所述能量比較系統相連的語音信號狀態機,該狀態機完成以下切換(a)當至少一個所述頻帶的限帶信號能量高於至少一個與該頻帶有關的閾值時,從無語音狀態切換到有語音狀態,以及(b)當至少一個所述頻帶的限帶信號能量低於至少一個與該頻帶有關的閾值時,從有語音狀態切換到無語音狀態。
2.權利要求1的系統還包括自適應閾值更新系統,該系統採用直方圖數據結構累加表示至少一個所述頻帶內的能量的歷史數據。
3.權利要求1的系統還包括一個與各所述頻帶有關的獨立的自適應閾值更新系統。
4.權利要求1的系統還包括根據各所述頻帶內的能量均值和方差,修改所述若干閾值的自適應閾值更新系統。
5.權利要求1的系統還包括對至少一個所述若干閾值的變化率的預定跳變敏感的局部語音檢測系統,如果所述跳變之前與所述跳變之後的所述某個閾值的平均值的比率超過某個預定值,所述局部語音檢測系統就阻止所述狀態機切換到有語音狀態。
6.權利要求1的系統還包括定義以下閾值的多閾值系統第一閾值為噪聲基數上的預定偏移;第二閾值為所述第一閾值的預定百分比,所述第二閾值小於所述第一閾值;以及第三閾值為所述第一閾值的預定倍數,所述第三閾值大於所述第一閾值;以及其中所述第一閾值控制從所述無語音狀態切換到所述有語音狀態;以及其中所述第二和第三閾值控制從所述有語音狀態切換到所述無語音狀態。
7.權利要求6的系統,其中如果至少一個所述頻帶的限帶信號能量低於所述第二閾值並且如果至少一個所述頻帶的限帶信號能量低於所述第三閾值,所述狀態機就從所述有語音狀態切換到所述無語音狀態。
8.權利要求1的系統還包括延遲判定緩衝器,該緩衝器存儲代表所述輸入信號的預定時間增量的數據,並且如果至少一個所述若干頻帶的限帶信號能量不超過至少一個整個所述預定時間增量期間的閾值,該緩衝器就阻止狀態機從所述無語音狀態切換到所述有語音狀態。
9.確定輸入信號內有無語音信號的方法,該方法包括以下步驟將所述輸入信號分裂為若干頻帶,各頻帶表示與不同頻率範圍相對應的限帶信號能量;把所述若干頻帶的限帶信號能量同若干閾值比較,從而把各頻帶同至少一個與該頻帶有關的閾值比較;以及確定(a)當至少一個所述頻帶的限帶信號能量高於至少一個與該頻帶有關的閾值時,存在有語音狀態,以及(b)當至少一個所述頻帶的限帶信號能量低於至少一個與該頻帶有關的閾值時,為無語音狀態。
10.權利要求9的方法還包括利用直方圖累加表示至少一個所述頻帶內的能量的歷史數據,以定義至少一個所述若干閾值。
11.權利要求9的方法還包括分別對各所述頻帶自適應更新至少一個所述若干閾值。
12.權利要求9的方法還包括根據各所述頻帶內的能量均值和方差,修改所述若干閾值。
13.權利要求9的方法還包括檢測至少一個所述若干閾值的變化率的預定跳變,並且如果所述跳變之前的與所述跳變之後的所述某個閾值的平均值的比率超過某個預定值,就確定不存在所述有語音狀態。
14.權利要求9的方法還包括定義以下閾值第一閾值為噪聲基數上的預定偏移;第二閾值為所述第一閾值的預定百分比,所述第二閾值小於所述第一閾值;以及第三閾值為所述第一閾值的預定倍數,所述第三閾值大於所述第一閾值;以及根據所述第一閾值確定存在所述有語音狀態;以及根據所述第二和第三閾值確定存在所述無語音狀態。
15.權利要求14的方法,其中如果至少一個所述頻帶的限帶信號能量高於所述第二閾值並且如果至少一個所述頻帶的限帶信號能量高於所述第三閾值,就確定存在所述無語音狀態。
16.權利要求9的方法還包括如果至少一個所述若干頻帶的限帶信號能量在整個預定時間增量期間不超過至少一個閾值,就確定不存在所述有語音狀態。
全文摘要
將輸入信號變換到頻域,隨後劃分為與不同頻率範圍相對應的頻帶。分別對各頻帶的數據施加自適應閾值。從而測試短期限帶能量,以確定有無語音信號。通過利用直方圖數據結構累加表示有關頻帶能量均值和方差的長期數據,獨立更新各信號路徑的自適應閾值。利用狀態機完成端點檢測,其中狀態機根據閾值比較結果,從無語音狀態變換到有語音狀態,反之亦然。局部語音檢測系統處理輸入信號被截短的情況。
文檔編號G10L11/00GK1242553SQ9910409
公開日2000年1月26日 申請日期1999年3月23日 優先權日1998年3月24日
發明者趙翊, 金-克勞德·軍全 申請人:松下電器產業株式會社