บริษัทรถยนต์อิสระมักใช้ LiDAR เซ็นเซอร์เพื่อสร้างความเข้าใจ 3 มิติเกี่ยวกับสภาพแวดล้อมรอบ ๆ รถของพวกเขา ตัวอย่างเช่น พวกเขาติดตั้งเซ็นเซอร์ LiDAR บนยานพาหนะเพื่อจับภาพสแนปชอตแบบ point-in-time ของสภาพแวดล้อม 3D โดยรอบอย่างต่อเนื่อง เอาต์พุตเซ็นเซอร์ LiDAR เป็นลำดับของเฟรมคลาวด์แบบจุด 3 มิติ (อัตราการจับภาพโดยทั่วไปคือ 10 เฟรมต่อวินาที) ความจริงของ Amazon SageMaker ทำให้ง่ายต่อการติดป้ายกำกับวัตถุในเฟรม 3 มิติเดียวหรือข้ามลำดับของเฟรมคลาวด์ 3 มิติสำหรับการสร้างชุดข้อมูลการฝึกอบรมแมชชีนเลิร์นนิง (ML) Ground Truth ยังรองรับการรวมเซ็นเซอร์ของกล้องและข้อมูล LiDAR ด้วยอินพุตกล้องวิดีโอสูงสุดแปดช่อง
เนื่องจากเซ็นเซอร์ LiDAR เข้าถึงได้ง่ายขึ้นและคุ้มค่าขึ้น ลูกค้าจึงใช้ข้อมูล point cloud ในพื้นที่ใหม่ๆ เช่น วิทยาการหุ่นยนต์ การทำแผนที่สัญญาณ และความเป็นจริงเสริมมากขึ้น อุปกรณ์มือถือใหม่บางรุ่นยังมีเซ็นเซอร์ LiDAR ซึ่งหนึ่งในนั้นให้ข้อมูลสำหรับโพสต์นี้! ความพร้อมใช้งานที่เพิ่มขึ้นของเซ็นเซอร์ LiDAR ได้เพิ่มความสนใจในข้อมูล point cloud สำหรับงาน ML เช่น การตรวจจับและติดตามวัตถุ 3 มิติ การแบ่งส่วน 3 มิติ การสังเคราะห์และการสร้างวัตถุ 3 มิติ และแม้แต่การใช้ข้อมูล 3 มิติเพื่อตรวจสอบการประมาณความลึก 2 มิติ
แม้ว่าข้อมูลบนคลาวด์แบบจุดหนาแน่นจะอุดมไปด้วยข้อมูล (มากกว่า 1 ล้านจุดบนคลาวด์) การติดฉลากเป็นเรื่องยากเพราะเวิร์กสเตชันการติดฉลากมักจะมีหน่วยความจำที่จำกัด และความสามารถด้านกราฟิกและคำอธิบายประกอบมักจะมีการกระจายตามพื้นที่ ซึ่งอาจเพิ่มเวลาแฝงได้ แม้ว่าจุดจำนวนมากอาจแสดงผลได้ในเวิร์กสเตชันของผู้ติดฉลาก แต่ปริมาณงานของผู้ติดฉลากสามารถลดลงได้เนื่องจากเวลาในการแสดงผลเมื่อต้องจัดการกับ point cloud ที่มีขนาดหลายล้าน ซึ่งเพิ่มต้นทุนการติดฉลากอย่างมากและประสิทธิภาพลดลง
วิธีหนึ่งในการลดต้นทุนและเวลาเหล่านี้คือการแปลงงานการติดฉลากบนคลาวด์พอยต์ให้เป็นงานที่เล็กลงและแสดงผลได้ง่ายขึ้น ซึ่งจะรักษาข้อมูลดั้งเดิมของ point cloud ส่วนใหญ่ไว้สำหรับทำหมายเหตุประกอบ เราเรียกแนวทางเหล่านี้อย่างกว้างๆ ว่า ลดขนาด, คล้ายกับ ลดขนาด ในโดเมนการประมวลผลสัญญาณ เช่นเดียวกับในโดเมนการประมวลผลสัญญาณ วิธีการสุ่มตัวอย่างแบบ point cloud จะพยายามลบจุดต่าง ๆ ในขณะที่ยังคงความเที่ยงตรงของ point cloud ดั้งเดิมไว้ เมื่อใส่คำอธิบายประกอบของ point clouds คุณสามารถใช้เอาต์พุต 3D ทรงลูกบาศก์ for การติดตามวัตถุ และ การตรวจจับวัตถุ งานโดยตรงสำหรับการฝึกอบรมหรือการตรวจสอบความถูกต้องบนระบบคลาวด์แบบจุดขนาดเต็ม โดยแทบไม่มีผลกระทบต่อประสิทธิภาพของแบบจำลองเลยในขณะเดียวกันก็ช่วยประหยัดเวลาในการติดฉลาก สำหรับรูปแบบอื่นๆ เช่น การแบ่งส่วนความหมาย โดยที่แต่ละจุดมีป้ายกำกับของตัวเอง คุณสามารถใช้ป้ายกำกับที่สุ่มตัวอย่างเพื่อคาดการณ์ป้ายกำกับในแต่ละจุดใน point cloud ดั้งเดิม ช่วยให้คุณทำการแลกเปลี่ยนระหว่างต้นทุนของผู้ติดฉลาก (และด้วยเหตุนี้จำนวนข้อมูลที่ติดป้ายกำกับ) และจำนวนเล็กน้อย การจัดประเภทคะแนนผิดในคลาวด์พอยต์ขนาดเต็ม
ในโพสต์นี้ เราจะอธิบายวิธีการใช้เทคนิคการสุ่มตัวอย่างเพื่อเตรียมข้อมูล point cloud ของคุณสำหรับการติดป้ายกำกับ จากนั้นสาธิตวิธีเพิ่มตัวอย่างป้ายกำกับเอาต์พุตของคุณเพื่อนำไปใช้กับชุดข้อมูลขนาดเต็มดั้งเดิมของคุณโดยใช้การอนุมานในตัวอย่างด้วยโมเดล ML อย่างง่าย เพื่อให้บรรลุสิ่งนี้ เราใช้ Ground Truth และ อินสแตนซ์โน้ตบุ๊ก Amazon SageMaker เพื่อดำเนินการติดฉลากและขั้นตอนก่อนการประมวลผลและหลังการประมวลผลทั้งหมด
ข้อมูล
ข้อมูลที่เราใช้ในโพสต์นี้เป็นการสแกนหลังคาอาคารอพาร์ตเมนต์ที่สร้างโดยใช้แอปเครื่องสแกน 3 มิติบน iPhone12 Pro แอพนี้ให้คุณใช้เครื่องสแกน LiDAR ในตัวบนอุปกรณ์มือถือเพื่อสแกนพื้นที่ที่กำหนดและส่งออกไฟล์ point cloud ในกรณีนี้ ข้อมูล point cloud จะอยู่ในรูปแบบ xyzrgb ซึ่งเป็นรูปแบบที่ยอมรับสำหรับ Ground Truth point cloud สำหรับข้อมูลเพิ่มเติมเกี่ยวกับประเภทข้อมูลที่อนุญาตในคลาวด์จุด Ground Truth โปรดดูที่ ยอมรับรูปแบบข้อมูลดิบ 3 มิติ.
ภาพต่อไปนี้แสดงการสแกน 3 มิติของเรา
วิธีการ
ขั้นแรก เราจะอธิบายวิธีการสองสามวิธีในการลดขนาดชุดข้อมูลสำหรับการติดป้ายกำกับ cloud point: การเรียงต่อกัน การสุ่มตัวอย่างแบบขั้นตอนคงที่ และค่าเฉลี่ยว็อกเซล เราแสดงให้เห็นว่าเหตุใดเทคนิคการสุ่มตัวอย่างการลดขนาดจึงสามารถเพิ่มปริมาณงานการติดฉลากของคุณโดยไม่ลดทอนคุณภาพของคำอธิบายประกอบลงอย่างมาก จากนั้นเราจะสาธิตวิธีใช้ป้ายกำกับที่สร้างบนคลาวด์พอยต์ที่สุ่มตัวอย่างและนำไปใช้กับพอยต์คลาวด์ดั้งเดิมของคุณด้วยวิธีการสุ่มตัวอย่าง
วิธีการสุ่มตัวอย่าง
การสุ่มตัวอย่างกำลังนำชุดข้อมูลขนาดเต็มของคุณมาและเลือกชุดย่อยของจุดจากชุดนั้นไปยังป้ายกำกับ หรือสร้างชุดตัวแทนของจุดใหม่ที่ไม่จำเป็นต้องอยู่ในชุดข้อมูลเดิม แต่อยู่ใกล้พอที่จะทำให้ติดป้ายกำกับได้
การปูกระเบื้อง
แนวทางที่ไร้เดียงสาอย่างหนึ่งคือการแบ่งพื้นที่จุดบนคลาวด์ของคุณออกเป็นลูกบาศก์ 3 มิติ หรือที่เรียกว่า ว็อกเซลของ (เช่น) 500,000 คะแนน แต่ละรายการที่มีป้ายกำกับแยกกันโดยอิสระ แนวทางนี้เรียกว่า การปูกระเบื้องลดขนาดฉากสำหรับการติดฉลากได้อย่างมีประสิทธิภาพ
อย่างไรก็ตาม สามารถเพิ่มเวลาและค่าใช้จ่ายในการติดฉลากได้อย่างมาก เนื่องจากฉาก 8 ล้านจุดทั่วไปอาจต้องแบ่งออกเป็นฉากย่อยมากกว่า 16 ฉาก งานอิสระจำนวนมากที่เป็นผลมาจากวิธีนี้หมายถึงเวลาของตัวบันทึกย่อใช้เวลาในการสลับบริบทระหว่างงานมากขึ้น และผู้ปฏิบัติงานอาจสูญเสียบริบทเมื่อฉากมีขนาดเล็กเกินไป ส่งผลให้ข้อมูลมีป้ายกำกับผิด
ตัวอย่างขั้นตอนคงที่
วิธีอื่นคือการเลือกหรือสร้างจำนวนจุดที่ลดลงโดยตัวอย่างย่อยเชิงเส้นที่เรียกว่า a ตัวอย่างขั้นตอนคงที่. สมมติว่าคุณต้องการบรรลุเป้าหมาย 500,000 คะแนน (เราสังเกตเห็นว่าสิ่งนี้สามารถแสดงผลได้โดยทั่วไปบนแล็ปท็อปสำหรับผู้บริโภค—ดู ยอมรับรูปแบบข้อมูลดิบ 3 มิติ) แต่คุณมี point cloud ที่มี 10 ล้านคะแนน คุณสามารถคำนวณขนาดขั้นตอนของคุณเป็น step = 10,000,000 / 500,000 = 20
. หลังจากที่คุณมีขนาดขั้นตอนแล้ว คุณสามารถเลือกจุดที่ 20 ในชุดข้อมูลของคุณเพื่อสร้าง point cloud ใหม่ หากข้อมูล point cloud ของคุณมีความหนาแน่นเพียงพอ ผู้ติดฉลากควรจะสามารถระบุคุณลักษณะที่เกี่ยวข้องใดๆ สำหรับการติดป้ายกำกับได้ แม้ว่าคุณจะมี 1 คะแนนต่อทุกๆ 20 ในฉากดั้งเดิมก็ตาม
ข้อเสียของแนวทางนี้คือไม่ใช่ทุกจุดที่จะนำไปสู่ผลลัพธ์ที่ได้จากการสุ่มตัวอย่างขั้นสุดท้าย ซึ่งหมายความว่าหากประเด็นใดประเด็นหนึ่งเป็นหนึ่งในประเด็นสำคัญสองสามข้อ แต่ไม่ใช่ส่วนหนึ่งของตัวอย่าง ผู้ใส่คำอธิบายประกอบของคุณอาจพลาดคุณสมบัติไปโดยสิ้นเชิง
Voxel หมายถึง
อีกรูปแบบหนึ่งของการสุ่มตัวอย่างที่ใช้จุดทั้งหมดเพื่อสร้างคลาวด์จุดที่สุ่มตัวอย่างคือการดำเนินการ การกรองตะแกรง. การกรองตารางหมายความว่าคุณแบ่งพื้นที่อินพุตออกเป็นกล่อง 3 มิติปกติ (หรือ voxels) ทั่ว point cloud และแทนที่จุดทั้งหมดภายใน voxel ด้วยจุดตัวแทนเพียงจุดเดียว (เช่น จุดเฉลี่ย) แผนภาพต่อไปนี้แสดงตัวอย่างกล่องสีแดง voxel
หากไม่มีจุดจากชุดข้อมูลอินพุตภายใน voxel ที่กำหนด จะไม่มีการเพิ่มจุดไปยัง point cloud ที่มีการสุ่มตัวอย่างสำหรับ voxel นั้น การกรองตารางแตกต่างจากตัวอย่างขั้นตอนแบบตายตัว เนื่องจากคุณสามารถใช้เพื่อลดสัญญาณรบกวนและปรับแต่งเพิ่มเติมได้โดยการปรับขนาดเคอร์เนลและฟังก์ชันการหาค่าเฉลี่ยเพื่อให้เกิดเมฆจุดสุดท้ายที่แตกต่างกันเล็กน้อย กลุ่มเมฆจุดต่อไปนี้แสดงผลของการสุ่มตัวอย่างแบบง่าย (ตัวอย่างขั้นตอนคงที่) และการสุ่มตัวอย่างขั้นสูง (ค่าเฉลี่ยของว็อกเซล) จุดสุ่มตัวอย่างกลุ่มเมฆโดยใช้วิธีการขั้นสูงจะราบรื่นยิ่งขึ้น โดยจะสังเกตเห็นได้ชัดเจนเป็นพิเศษเมื่อเปรียบเทียบกำแพงอิฐสีแดงที่ด้านหลังของทั้งสองฉาก
วิธีการสุ่มตัวอย่าง
หลังจากดาวน์แซมปลิงและติดป้ายกำกับข้อมูลของคุณแล้ว คุณอาจต้องการดูป้ายกำกับที่สร้างขึ้นบนคลาวด์จุดที่เล็กกว่าและสุ่มตัวอย่างซึ่งฉายบนคลาวด์พอยต์ขนาดเต็ม ซึ่งเราเรียกว่า สุ่มตัวอย่าง. งานตรวจจับหรือติดตามวัตถุไม่จำเป็นต้องมีการประมวลผลภายหลังในการดำเนินการนี้ ป้ายกำกับใน point cloud ที่มีการลดขนาดตัวอย่าง (เช่น cuboids) สามารถใช้ได้โดยตรงกับ point cloud ที่ใหญ่กว่า เนื่องจากถูกกำหนดไว้ในพื้นที่พิกัดโลกที่แชร์โดย point cloud ขนาดเต็ม (x, y, z, height, width, length) ป้ายกำกับเหล่านี้มีความอ่อนไหวน้อยที่สุดต่อข้อผิดพลาดเล็กๆ น้อยๆ ตามขอบเขตของออบเจ็กต์เมื่อจุดขอบเขตไม่อยู่ในชุดข้อมูลที่ลดขนาดตัวอย่าง แต่ข้อผิดพลาดเป็นครั้งคราวและเล็กน้อยดังกล่าวจะเกินดุลด้วยจำนวนจุดพิเศษที่ติดป้ายกำกับอย่างถูกต้องภายในทรงลูกบาศก์ที่สามารถ อบรม.
อย่างไรก็ตาม สำหรับงานการแบ่งเซ็กเมนต์ความหมายของคลาวด์แบบจุด 3 มิติ ป้ายกำกับไม่สามารถใช้กับชุดข้อมูลขนาดเต็มได้โดยตรง เรามีเพียงชุดย่อยของป้ายกำกับ แต่เราต้องการคาดการณ์ป้ายกำกับชุดข้อมูลทั้งหมดที่เหลือตามชุดย่อยนี้ ในการทำเช่นนี้เราสามารถใช้คำสั่งง่าย ๆ ได้ K-Nearest Neighbors (K-NN) ลักษณนาม โดยมีแต้มติดไว้เป็นชุดฝึก K-NN เป็นอัลกอริธึม ML ที่มีการควบคุมดูแลอย่างง่าย ซึ่งคาดการณ์ป้ายกำกับของจุดโดยใช้จุดที่มีป้ายกำกับ "K" ใกล้เคียงที่สุดและการลงคะแนนแบบถ่วงน้ำหนัก ด้วย K-NN เราสามารถทำนายระดับจุดของจุดที่เหลือที่ไม่มีป้ายกำกับในชุดข้อมูลขนาดเต็มตามระดับส่วนใหญ่ของจุดที่ใกล้เคียงที่สุด (ตามระยะทางแบบยุคลิด) สามจุดที่ใกล้เคียงที่สุด เราสามารถปรับแต่งแนวทางนี้เพิ่มเติมได้โดยเปลี่ยนไฮเปอร์พารามิเตอร์ของตัวแยกประเภท K-NN เช่น จำนวนจุดที่ใกล้เคียงที่สุดที่ต้องพิจารณา ตลอดจนเมตริกระยะทางและโครงร่างการถ่วงน้ำหนักของจุด
หลังจากที่คุณแมปป้ายชื่อตัวอย่างกับชุดข้อมูลทั้งหมด คุณสามารถแสดงภาพไทล์ภายในชุดข้อมูลขนาดเต็มเพื่อดูว่ากลยุทธ์การสุ่มตัวอย่างทำงานได้ดีเพียงใด
ตอนนี้เราได้ตรวจสอบวิธีการที่ใช้ในโพสต์นี้แล้ว เราสาธิตเทคนิคเหล่านี้ในสมุดบันทึก SageMaker ในตัวอย่างฉากคลาวด์จุดแบ่งกลุ่มความหมายตามความหมาย
เบื้องต้น
ในการดำเนินการแก้ไขปัญหานี้ คุณต้องมีสิ่งต่อไปนี้:
- An บัญชี AWS.
- โน๊ตบุ๊ค AWS Identity และการจัดการการเข้าถึง บทบาท (IAM) ที่มีสิทธิ์ที่จำเป็นในการดำเนินการแนะนำนี้ บทบาท IAM ของคุณต้องมีนโยบายที่จัดการโดย AWS แนบมาด้วย:
AmazonS3FullAccess
AmazonSageMakerFullAccess
- An บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon บัคเก็ต (Amazon S3) ที่จัดเก็บสิ่งประดิษฐ์ของโน้ตบุ๊ก (ข้อมูลอินพุตและป้ายกำกับ)
- ทีมงาน SageMaker สำหรับโพสต์นี้เราใช้ทีมงานส่วนตัว คุณสามารถสร้างทีมงานได้บนคอนโซล SageMaker
การตั้งค่าโน้ตบุ๊ก
เราใช้โน๊ตบุ๊ค ground_truth_annotation_dense_point_cloud_tutorial.ipynb
ใน ตัวอย่าง SageMaker ของอินสแตนซ์โน้ตบุ๊กเพื่อสาธิตวิธีการสุ่มตัวอย่างและสุ่มตัวอย่างเหล่านี้ สมุดบันทึกนี้มีรหัสทั้งหมดที่จำเป็นสำหรับการประมวลผลล่วงหน้า การติดป้ายกำกับ และการประมวลผลภายหลัง
ในการเข้าถึงโน้ตบุ๊ก ให้ทำตามขั้นตอนต่อไปนี้:
- สร้างอินสแตนซ์สมุดบันทึก. คุณสามารถใช้ประเภทอินสแตนซ์ ml.t2.xlarge เพื่อเปิดใช้อินสแตนซ์โน้ตบุ๊ก โปรดเลือกอินสแตนซ์ที่มี RAM อย่างน้อย 16 GB
- คุณต้องใช้บทบาท IAM ของสมุดบันทึกที่คุณสร้างไว้ตั้งแต่เนิ่นๆ บทบาทนี้ช่วยให้โน้ตบุ๊กของคุณสามารถอัปโหลดชุดข้อมูลของคุณไปยัง Amazon S3 และเรียกใช้ API โซลูชันได้
- เปิด Jupyter Lab หรือ Jupyter ไปที่ เข้าถึงอินสแตนซ์สมุดบันทึกของคุณ.
- ใน Jupyter ให้เลือก ตัวอย่าง SageMaker ใน Jupyter Lab เลือกไอคอน SageMaker
- Choose งานติดฉลากความจริงพื้น Ground จากนั้นเลือก ไอพินบ์ สมุดบันทึก.
- หากคุณกำลังใช้ Jupyter ให้เลือก ใช้ เพื่อคัดลอกสมุดบันทึกไปยังอินสแตนซ์ของคุณและเรียกใช้ หากคุณอยู่ในแล็บ Jupyter ให้เลือก สร้างสำเนา.
จัดเตรียมอินพุตโน้ตบุ๊ก
อันดับแรก เราแก้ไขสมุดบันทึกเพื่อเพิ่ม ARN ของทีมงานส่วนตัวของเราและตำแหน่งที่ฝากข้อมูลที่เราใช้เพื่อจัดเก็บชุดข้อมูลและป้ายกำกับของเรา
ส่วนที่ 1: ดึงชุดข้อมูลและแสดงภาพจุด cloud
เราดาวน์โหลดข้อมูลของเราโดยเรียกใช้ส่วนที่ 1 ของโน้ตบุ๊ก ซึ่งจะดาวน์โหลดชุดข้อมูลของเราจาก Amazon S3 และโหลด point cloud ลงในอินสแตนซ์โน้ตบุ๊กของเรา เราดาวน์โหลดข้อมูลที่เตรียมไว้แบบกำหนดเองจากบัคเก็ตที่ AWS เป็นเจ้าของ วัตถุที่เรียกว่า rooftop_12_49_41.xyz
ควรอยู่ในรูทของที่ฝากข้อมูล S3 ข้อมูลนี้เป็นการสแกนของอาคารอพาร์ตเมนต์บนชั้นดาดฟ้าที่สร้างขึ้นเองบนอุปกรณ์มือถือ ในกรณีนี้ ข้อมูล point cloud จะอยู่ในรูปแบบ xyzrgb
เราสามารถเห็นภาพ point cloud ของเราได้โดยใช้ Matplotlib กระจาย3d การทำงาน. ไฟล์ point cloud มีจุดที่ถูกต้องทั้งหมดแต่ไม่ได้หมุนอย่างถูกต้อง เราสามารถหมุนวัตถุรอบแกนของมันได้โดยคูณจุดเมฆด้วยเมทริกซ์การหมุน เราสามารถรับเมทริกซ์การหมุนโดยใช้ สคิปปี้ และระบุการเปลี่ยนแปลงระดับที่เราต้องการทำกับแต่ละแกนโดยใช้ from_euler
วิธี:
ส่วนที่ 2: ลดขนาดชุดข้อมูล
ต่อไป เราลดขนาดชุดข้อมูลให้เหลือน้อยกว่า 500,000 จุด ซึ่งเป็นจำนวนจุดในอุดมคติสำหรับการแสดงภาพและการติดฉลาก ดูรายละเอียดเพิ่มเติมได้ที่ ขีดจำกัดความละเอียดของ Point Cloud in ยอมรับรูปแบบข้อมูลดิบ 3 มิติ. จากนั้นเราพลอตผลลัพธ์ของการสุ่มตัวอย่างของเราโดยเรียกใช้ส่วนที่ 2
ดังที่เราได้กล่าวไว้ก่อนหน้านี้ รูปแบบการสุ่มตัวอย่างที่ง่ายที่สุดคือการเลือกค่าโดยใช้ขนาดขั้นตอนคงที่โดยพิจารณาจากขนาดที่เราต้องการให้ระบบคลาวด์จุดที่เป็นผลลัพธ์ของเรามีขนาดใหญ่เพียงใด
แนวทางขั้นสูงกว่าคือการแบ่งพื้นที่อินพุตออกเป็นลูกบาศก์ หรือที่เรียกว่า voxels และเลือกจุดเดียวต่อกล่องโดยใช้ฟังก์ชันการหาค่าเฉลี่ย การใช้งานอย่างง่ายจะแสดงในรหัสต่อไปนี้
คุณสามารถปรับจำนวนคะแนนและขนาดกล่องเป้าหมายที่ใช้เพื่อดูการลดลงของความชัดเจนของคลาวด์แบบจุดได้เมื่อมีการสุ่มตัวอย่างที่รุนแรงมากขึ้น
ส่วนที่ 3: เห็นภาพการเรนเดอร์ 3 มิติ
เราสามารถเห็นภาพเมฆแบบจุดโดยใช้พล็อตแบบกระจาย 3 มิติของจุดต่างๆ แม้ว่า point cloud ของเราจะมีสี แต่การแปลงสภาพของเรามีผลกับสีต่างกัน ดังนั้นการเปรียบเทียบพวกมันในสีเดียวจึงเป็นการเปรียบเทียบที่ดีกว่า เราจะเห็นได้ว่าวิธีการเฉลี่ย voxel ขั้นสูงสร้าง point cloud ที่นุ่มนวลขึ้นเพราะการเฉลี่ยมีผลในการลดสัญญาณรบกวน ในโค้ดต่อไปนี้ เราสามารถดูที่ point clouds ของเราจากสองเปอร์สเปคทีฟที่แยกจากกัน โดยการคูณ point clouds ของเราด้วยเมทริกซ์การหมุนที่ต่างกัน
เมื่อคุณเรียกใช้ส่วนที่ 3 ในสมุดบันทึก คุณยังเห็นการเปรียบเทียบของแนวทางขั้นตอนเชิงเส้นกับวิธีตารางแบบกล่อง โดยเฉพาะอย่างยิ่งในวิธีที่ตัวกรองตารางกล่องมีผลทำให้ราบรื่นเล็กน้อยบนระบบคลาวด์จุดโดยรวม การปรับให้เรียบนี้อาจมีความสำคัญขึ้นอยู่กับระดับเสียงรบกวนของชุดข้อมูลของคุณ การปรับเปลี่ยนฟังก์ชันการกรองกริดจากค่ากลางถึงค่ามัธยฐานหรือฟังก์ชันการเฉลี่ยอื่นๆ ยังสามารถปรับปรุงความชัดเจนของคลาวด์จุดสุดท้ายได้อีกด้วย ดูที่ผนังด้านหลังของตัวอย่างธรรมดา (ขนาดขั้นคงที่) และขั้นสูง (ค่าเฉลี่ยของว็อกเซล) อย่างถี่ถ้วน สังเกตเอฟเฟกต์การปรับให้เรียบที่วิธีค่าเฉลี่ย voxel เปรียบเทียบกับวิธีขนาดขั้นคงที่
ส่วนที่ 4: เปิดตัวงานการแบ่งส่วนความหมาย
เรียกใช้ส่วนที่ 4 ในสมุดบันทึกเพื่อใช้ point cloud นี้และเปิดใช้ Ground Truth point cloud semantic segmentation labeling job โดยใช้ เซลล์เหล่านี้สร้างไฟล์ Manifest อินพุตที่จำเป็นและจัดรูปแบบ point cloud ในรูปแบบที่เข้ากันได้กับ Ground Truth
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับรูปแบบอินพุตของ Ground Truth ที่เกี่ยวข้องกับการชี้ข้อมูลบนคลาวด์ โปรดดูที่ ป้อนข้อมูล และ ยอมรับรูปแบบข้อมูลดิบ 3 มิติ.
ในส่วนนี้ เรายังดำเนินการติดฉลากในพอร์ทัลผู้ปฏิบัติงาน เราติดป้ายกำกับชุดย่อยของ point cloud เพื่อให้มีคำอธิบายประกอบเพื่อทำการสุ่มตัวอย่างด้วย เมื่องานเสร็จสมบูรณ์ เราจะโหลดคำอธิบายประกอบจาก Amazon S3 ลงในอาร์เรย์ NumPy สำหรับการประมวลผลภายหลังของเรา ต่อไปนี้เป็นภาพหน้าจอจากเครื่องมือแบ่งกลุ่มความหมายของ Ground Truth point cloud
ส่วนที่ 5: ทำการสุ่มตัวอย่างฉลาก
ตอนนี้เรามีป้ายกำกับที่ลดขนาดตัวอย่างแล้ว เราฝึกตัวแยกประเภท K-NN จาก SKLearn เพื่อคาดการณ์ป้ายกำกับชุดข้อมูลทั้งหมดโดยถือว่าจุดที่มีคำอธิบายประกอบเป็นข้อมูลการฝึกและทำการอนุมานจุดที่เหลือในจุดที่ไม่มีป้ายกำกับใน point cloud ขนาดเต็มของเรา
คุณสามารถปรับจำนวนคะแนนที่ใช้ เช่นเดียวกับระบบเมตริกระยะทางและรูปแบบการถ่วงน้ำหนัก เพื่อส่งผลต่อวิธีการอนุมานฉลาก หากคุณติดป้ายกำกับไทล์สองสามชุดในชุดข้อมูลขนาดเต็ม คุณสามารถใช้ไทล์ที่ติดป้ายกำกับนั้นเป็นความจริงภาคพื้นดินเพื่อประเมินความถูกต้องของการคาดคะเน K-NN จากนั้น คุณสามารถใช้เมตริกความแม่นยำนี้สำหรับการปรับไฮเปอร์พารามิเตอร์ของ K-NN หรือลองใช้อัลกอริทึมการอนุมานแบบต่างๆ เพื่อลดจำนวนจุดที่จัดประเภทผิดระหว่างขอบเขตของออบเจ็กต์ ส่งผลให้อัตราข้อผิดพลาดในตัวอย่างต่ำที่สุด ดูรหัสต่อไปนี้:
ส่วนที่ 6: เห็นภาพฉลากที่สุ่มตัวอย่าง
ตอนนี้เราได้ทำการสุ่มตัวอย่างข้อมูลที่ติดป้ายกำกับแล้ว เราสามารถมองเห็นไทล์ของจุดคลาวด์ขนาดเต็มดั้งเดิมได้ เราไม่ได้แสดงจุด cloud ขนาดเต็มทั้งหมด เนื่องจากอาจทำให้เครื่องมือสร้างภาพของเราไม่สามารถแสดงผลได้ ดูรหัสต่อไปนี้:
เนื่องจากชุดข้อมูลของเรามีความหนาแน่น เราจึงสามารถแสดงภาพฉลากที่สุ่มตัวอย่างภายในไทล์เพื่อดูป้ายกำกับที่สุ่มตัวอย่างที่สุ่มตัวอย่างไปยังจุดคลาวด์ขนาดเต็ม แม้ว่าการจัดประเภทผิดจำนวนเล็กน้อยอาจมีอยู่ตามขอบเขตขอบเขตระหว่างออบเจ็กต์ แต่คุณยังมีจุดที่ติดป้ายกำกับอย่างถูกต้องในจุดคลาวด์ขนาดเต็มมากกว่าคลาวด์จุดเริ่มต้น ซึ่งหมายความว่าความแม่นยำ ML โดยรวมของคุณอาจดีขึ้น
ทำความสะอาด
โน๊ตบุ๊คอินสแตนซ์: คุณมีสองตัวเลือกหากคุณไม่ต้องการให้อินสแตนซ์สมุดบันทึกที่สร้างขึ้นทำงานต่อไป หากคุณต้องการบันทึกในภายหลัง คุณสามารถหยุดแทนที่จะลบออก
- ไปยัง หยุด อินสแตนซ์โน้ตบุ๊ก: คลิก อินสแตนซ์โน้ตบุ๊ก ในบานหน้าต่างด้านซ้ายของโฮมเพจคอนโซล SageMaker ต่อไปให้คลิกที่ หยุด ใต้คอลัมน์ 'การดำเนินการ' ทางด้านซ้ายของชื่ออินสแตนซ์สมุดบันทึกของคุณ หลังจากที่อินสแตนซ์สมุดบันทึกหยุดทำงาน คุณสามารถเริ่มใหม่ได้อีกครั้งโดยคลิก เริ่มต้น ลิงค์ โปรดทราบว่าหากคุณหยุดแทนที่จะลบ คุณจะถูกเรียกเก็บเงินสำหรับพื้นที่เก็บข้อมูลที่เกี่ยวข้อง
- ไปยัง ลบ อินสแตนซ์โน้ตบุ๊ก: ก่อนอื่นให้หยุดตามคำแนะนำด้านบน ถัดไป ให้คลิกปุ่มตัวเลือกถัดจากอินสแตนซ์โน้ตบุ๊กของคุณ จากนั้นเลือก ลบ จาก สถานะ เมนูแบบเลื่อนลง
สรุป
Downsampling point clouds เป็นวิธีที่ใช้ได้เมื่อประมวลผลข้อมูลล่วงหน้าสำหรับการตรวจจับออบเจ็กต์และการติดป้ายกำกับการติดตามออบเจ็กต์ สามารถลดต้นทุนการติดฉลากในขณะที่ยังคงสร้างฉลากเอาต์พุตคุณภาพสูง โดยเฉพาะอย่างยิ่งสำหรับงานตรวจจับและติดตามวัตถุ 3 มิติ ในโพสต์นี้ เราแสดงให้เห็นว่าวิธีการสุ่มตัวอย่างสามารถส่งผลต่อความชัดเจนของ point cloud สำหรับผู้ปฏิบัติงานได้อย่างไร และแสดงวิธีการบางอย่างที่มีการแลกเปลี่ยนโดยพิจารณาจากระดับเสียงรบกวนของชุดข้อมูล
สุดท้าย เราแสดงให้เห็นว่าคุณสามารถทำงาน 3D point cloud semantic segmentationation บนชุดข้อมูล downsampled และจับคู่ label กับ point cloud ขนาดเต็มผ่านการทำนายในตัวอย่าง เราทำสิ่งนี้สำเร็จโดยการฝึกตัวแยกประเภทเพื่อทำการอนุมานจุดขนาดชุดข้อมูลเต็มที่เหลืออยู่ โดยใช้จุดที่ติดป้ายกำกับแล้วเป็นข้อมูลการฝึก วิธีนี้ช่วยให้สามารถติดฉลากฉากคลาวด์ที่มีความหนาแน่นสูงได้อย่างคุ้มค่า ในขณะที่ยังคงคุณภาพฉลากโดยรวมที่ดี
ทดสอบ สมุดบันทึกนี้ ด้วยฉากเมฆจุดหนาแน่นของคุณเองใน Ground Truth ลองใช้เทคนิคการสุ่มตัวอย่างใหม่ และลองใช้โมเดลใหม่ๆ นอกเหนือจาก K-NN สำหรับการทำนายในตัวอย่างขั้นสุดท้าย เพื่อดูว่าเทคนิคการสุ่มตัวอย่างการสุ่มตัวอย่างและการสุ่มตัวอย่างสามารถลดต้นทุนการติดฉลากของคุณได้หรือไม่
เกี่ยวกับผู้เขียน
วิทยาสาคร รวิปาติ เป็นสถาปนิก Deep Learning ที่ ห้องปฏิบัติการโซลูชัน Amazon MLซึ่งเขาใช้ประสบการณ์มากมายในระบบแบบกระจายขนาดใหญ่และความหลงใหลในการเรียนรู้ของเครื่องเพื่อช่วยลูกค้า AWS ในอุตสาหกรรมต่างๆ เร่งการนำ AI และระบบคลาวด์ไปใช้ ก่อนหน้านี้ เขาเป็นวิศวกรแมชชีนเลิร์นนิ่งใน Connectivity Services ที่ Amazon ซึ่งช่วยสร้างแพลตฟอร์มส่วนบุคคลและการบำรุงรักษาเชิงคาดการณ์
ไอแซค พริวิเทร่า เป็นสถาปนิกโซลูชันผู้เชี่ยวชาญด้าน Machine Learning และช่วยลูกค้าในการออกแบบและสร้างโซลูชันคอมพิวเตอร์วิทัศน์ระดับองค์กรบน AWS ไอแซคมีพื้นฐานในการใช้การเรียนรู้ของเครื่องและการประมวลผลแบบเร่งความเร็วสำหรับคอมพิวเตอร์วิทัศน์และการวิเคราะห์สัญญาณ ไอแซคยังสนุกกับการทำอาหาร เดินป่า และติดตามความก้าวหน้าล่าสุดของแมชชีนเลิร์นนิงในเวลาว่าง
เจเรมี เฟลแทรคโก เป็นวิศวกรพัฒนาซอฟต์แวร์ของ Amazon ML Solutions Lab ที่ Amazon Web Services เขาใช้ภูมิหลังด้านคอมพิวเตอร์วิทัศน์ วิทยาการหุ่นยนต์ และการเรียนรู้ของเครื่องเพื่อช่วยให้ลูกค้า AWS เร่งการนำ AI ไปใช้
- 3d
- เข้า
- การนำมาใช้
- AI
- การรับเลี้ยงบุตรบุญธรรมของ AI
- ขั้นตอนวิธี
- อัลกอริทึม
- อเมซอน
- Amazon Web Services
- การวิเคราะห์
- APIs
- app
- AREA
- รอบ
- เพิ่มความเป็นจริง
- ความพร้อมใช้งาน
- AWS
- กล่อง
- สร้าง
- การก่อสร้าง
- โทรศัพท์
- การเรียกเก็บเงิน
- การจัดหมวดหมู่
- เมฆ
- การยอมรับระบบคลาวด์
- รหัส
- คอลัมน์
- บริษัท
- วิสัยทัศน์คอมพิวเตอร์
- การคำนวณ
- การเชื่อมต่อ
- ผู้บริโภค
- การปรุงอาหาร
- ค่าใช้จ่าย
- การสร้าง
- ลูกค้า
- ข้อมูล
- การซื้อขาย
- การเรียนรู้ลึก ๆ
- ออกแบบ
- การตรวจพบ
- พัฒนาการ
- อุปกรณ์
- ระยะทาง
- หล่น
- ก่อน
- อย่างมีประสิทธิภาพ
- วิศวกร
- สิ่งแวดล้อม
- ส่งออก
- ลักษณะ
- คุณสมบัติ
- ความจงรักภักดี
- มะเดื่อ
- ชื่อจริง
- ฟอร์ม
- รูป
- เต็ม
- ฟังก์ชัน
- ดี
- ตะแกรง
- การเจริญเติบโต
- จุดสูง
- การธุดงค์
- หน้าแรก
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- ทำอย่างไร
- HTTPS
- AMI
- ICON
- เอกลักษณ์
- ภาพ
- ส่งผลกระทบ
- เพิ่ม
- อุตสาหกรรม
- มีอิทธิพล
- ข้อมูล
- อยากเรียนรู้
- IT
- การสัมภาษณ์
- งาน
- การเก็บรักษา
- การติดฉลาก
- ป้ายกำกับ
- ใหญ่
- ล่าสุด
- เปิดตัว
- เรียนรู้
- การเรียนรู้
- ชั้น
- LIDAR
- ถูก จำกัด
- LINK
- โหลด
- ที่ตั้ง
- เรียนรู้เครื่อง
- ส่วนใหญ่
- แผนที่
- ล้าน
- ML
- โทรศัพท์มือถือ
- โทรศัพท์มือถือ
- อุปกรณ์มือถือ
- แบบ
- เพื่อนบ้าน
- สัญญาณรบกวน
- ตัวเลข
- การตรวจจับวัตถุ
- Options
- อื่นๆ
- PC
- การปฏิบัติ
- ส่วนบุคคล
- มุมมอง
- แพลตฟอร์ม
- นโยบาย
- พอร์ทัล
- คำทำนาย
- การคาดการณ์
- ส่วนตัว
- มือโปร
- ผลิต
- คุณภาพ
- วิทยุ
- แรม
- ดิบ
- ความจริง
- ลด
- REST
- ผลสอบ
- หุ่นยนต์
- วิ่ง
- วิ่ง
- sagemaker
- ประหยัด
- การสแกน
- เซ็นเซอร์
- บริการ
- การให้บริการ
- ชุด
- ที่ใช้ร่วมกัน
- ง่าย
- ขนาด
- เล็ก
- So
- ซอฟต์แวร์
- การพัฒนาซอฟต์แวร์
- โซลูชัน
- ช่องว่าง
- เกี่ยวกับอวกาศ
- เริ่มต้น
- สถิติ
- การเก็บรักษา
- จัดเก็บ
- กลยุทธ์
- รองรับ
- ระบบ
- เป้า
- เวลา
- การติดตาม
- การฝึกอบรม
- การรักษาเยียวยา
- พาหนะ
- ยานพาหนะ
- กับ
- วีดีโอ
- รายละเอียด
- วิสัยทัศน์
- การสร้างภาพ
- ปริมาณ
- โหวต
- เว็บ
- บริการเว็บ
- WHO
- วิกิพีเดีย
- ภายใน
- งาน
- แรงงาน
- โลก
- X