寧會峰,吳金鵬,王登峰,巫成
(蘭州理工大學機電學院,甘肅 蘭州 740000)
近年來,隨著機械制造業(yè)向精密加工、超精密加工方向發(fā)展,對材料微觀結(jié)構(gòu)的研究日漸重要。 金屬材料基本為晶體材料,組織結(jié)構(gòu)在金屬材料中具有一定的普遍性并對材料的性能具有重要的影響[1]。 戴連松等利用Voron幾何方法,基于Python 腳本, 在ABAQUS 中生成了能夠考慮到晶粒幾何形狀不規(guī)則性的多晶純鈦材料幾何模型[2];李宏偉等通過圖像數(shù)值化等方法構(gòu)建了鈦合金真實組織的有限元模型[3,4];吳玉瑞等通過部分晶體取向表示初始組織結(jié)構(gòu)建立了有限元模型[5];Igor Simonovski 等,通過X 射線衍射顯微鏡或X 射線衍射對比斷層掃描(DCT)等實驗技術(shù)生成復雜的晶粒表面的網(wǎng)格,然后根據(jù)面上的網(wǎng)格分割晶體模型并劃分網(wǎng)格單元[6]。 這些建模方式存在簡化、 灰度值可表述的范圍有限、或需要大量檢測數(shù)據(jù)等局限性。
為此,本文提出一種基于python-opencv(圖像處理)提取金相組織圖像的信息,并據(jù)此分別建立改進的Vorono晶體模型和與實際晶粒的分布相關的晶體模型的方法。此方法僅需要材料的金相圖就可實現(xiàn)在ABAQUS 中建立較大面積的多晶幾何模型, 并以厚度為50 mm 的7050-T7451 鋁合金板材表面的金相圖為例演示圖像提取和在ABAQUS 中分割模型的過程。
圖1 為總體流程圖, 主要包含以下幾部分,對金相圖預處理和分區(qū)操作;分水嶺分割;填充晶界部分;合并分區(qū);根據(jù)晶?;ハ嘀g的尺寸差異選擇模型:尺寸差異較小的,選用根據(jù)晶粒分布改進的Vorono多邊形分割方法, 尺寸差異較大的,選用根據(jù)晶界分布直接分割的方法。
圖1 總流程圖
預處理包括對金相圖進行能夠增強圖像對比性的直方圖均值化和去除噪聲的高斯濾波操作;分區(qū)處理,是由于在小區(qū)域圖像內(nèi)圖像特征比較均勻,能夠更好的提取圖像特征。特別注意:(1)為使得后續(xù)合并圖像后晶界更加連續(xù),各相鄰分區(qū)要存在重疊部分,即分區(qū)的總像素點數(shù)量需略大于原圖;(2)由于分區(qū)要求,無法利用直接合并圖像,從而需要對每個分區(qū)進行標記。
為獲得連續(xù)的輪廓線,方便后續(xù)對晶界部分進行填充操作,本文選用分水嶺算法為圖像的分割辦法。 如圖2 所示,分水嶺操作具體步驟分為獲取分水嶺的“種子”信息和進行分水嶺操作兩個步驟,其中前者為后者的預處理操作,包含均值遷移濾波、灰度化、二值化、連續(xù)開操作、距離變換、提取連通域等操作。 填充操作采用與原圖膨脹操作的輸出圖像對照的方法,將包含晶界的連通域像素值設置為0。
圖2 分水嶺操作的流程圖
根據(jù)分區(qū)的標記合并圖像, 借助pythonopencv 中的findcontours 函數(shù)進行輪廓提取和編號, 之后通過fitEllipse 函數(shù)擬合每個輪廓的最小外接橢圓,輸出所有橢圓幾何中心,將中心點的分布作為晶粒分布情況, 并以此作為生成Vorono多邊形的中心點。
本文采用的細化方法為查表法,使用特定的3×3 的卷積核對圖像做卷積,卷積結(jié)果對照參考表確定是否保留,經(jīng)過多次細化操作后,提取多曲線段。
利用圖像信息在ABAQUS 中建立具有實際晶界分布的多晶模型, 需要提取圖像中的曲線段。 如圖3 所示,圖像中的曲線段由一個個像素點組成,多曲線段提取的過程可以通過前一個點來搜尋后一個點來實現(xiàn)。提取的曲線段用來劃分晶粒,在具體過程中需要注意:(1)須保證多條晶界的相交點一定能夠被提?。?2) 保留每條線段的端點信息;(3)孤立線段不必提取。 因此,曲線段檢索從線段與線段的相交點開始檢索可以很好地達到目的。 最后為便于模型的分割,針對提取到的曲線段信息,進行小角度夾角處過提取問題的處理和曲線內(nèi)部像素點的稀疏處理。
圖3 多曲線段提取流程圖
通過python 腳本將提取到的圖像信息先在ABAQUS 中建立草圖, 再根據(jù)草圖分割模型,以實現(xiàn)對材料微觀組織的幾何建模。 此外,本文對兩種多晶模型中網(wǎng)格單元劃分進行討論。
(1)分割模型后直接生成網(wǎng)格單元,這種方法生成的網(wǎng)格密度和形狀都不均勻,但因為邊界比較清晰能夠方便地添加cohesive 單元等,更好定義晶界的行為。
(2)先生成網(wǎng)格再對照分割模型對網(wǎng)格單元分類,這種方法容易實現(xiàn)密度均勻的四邊形網(wǎng)格劃分,有利于提高計算效率,但晶粒邊界變?yōu)榱虽忼X狀的結(jié)構(gòu),因此不能很好地反映晶界情況。
圖4 中,圖(a)為厚度50 mm 的7050-T7451鋁合金軋板靠近表面部分的金相圖;圖(b)為經(jīng)過預處理后的圖片,提高了對比度,晶界更明顯。
圖4 金相圖原圖和預處理圖像
圖5 中,圖(a)為分區(qū)處理后選取其中一部分;圖(b)為分水嶺操作和填充操作后的結(jié)果圖像;圖(c)為輪廓提取后以不同顏色繪制在圖(b)上的結(jié)果圖像。
圖5 圖像處理過程的部分示意圖
圖6 中,圖(a)為通過分水嶺操作并合并小圖像后得到的圖像,圖(b)為將得到的大概中心點用紅色圓點繪制后得到的圖像。
圖6 晶粒中心示意圖
圖7 中,圖(a)為多次細化后的結(jié)果圖;圖(b)為對圖(a)進行多曲線段提取,并分別以不同顏色對所有曲線段進行標注后得到的結(jié)果圖像。
圖7 晶界提取示意圖
圖8 改進Vorono多邊形模型
利用提取的晶界簡化信息借助python 腳本在ABAQUS 中實現(xiàn)實際晶界分布模型的分割。圖9 中,圖(a)為在草圖中繪制的晶界圖;圖(b)為按照草圖對零件分割后得到的模型;圖(c)為劃分網(wǎng)格后按照分割體對網(wǎng)格單元分類得到的有限元模型。
圖9 實際晶界分布模型
本文以在ABAQUS 中實現(xiàn)材料的微觀結(jié)構(gòu)的幾何建模為目的,對金相圖進行了直方圖均衡化、分水嶺、輪廓提取、細化、多線段提取等操作,提取了圖像中有關晶界的信息。 利用這些信息,借助python 腳本實現(xiàn)改進Vorono多晶模型和基于實際晶界的多晶體微觀組織有限元幾何模型的構(gòu)建。