Polygon PLY (.ply)

Stanford Стандарт

Polygon File Format (PLY, известен още като Stanford Triangle Format) е разширяем 3D формат, разработен от Грег Тюрк в Станфордския университет. Използва се в някои работни процеси за сканиране, фотограметрия и работа с точкови облаци.

Конвертиране от PLY към OBJ

Безплатен конвертор от PLY към OBJ в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Проверка и метаданни

Операционните системи и файловите анализатори идентифицират PLY файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

Поверително - файловете никога не напускат устройството ви

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на заглавката (сигнатурни байтове)

Операционните системи и файловите анализатори идентифицират PLY файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

70 6C 79 0A

ASCII ПРЕДСТАВЯНЕ: ply\n

Стандартизация: Stanford University Computer Graphics Laboratory Standard

Технически спецификации

Контейнерна архитектураASCII или двоично заглавие с дефиниции на разширяеми елементи и свойства, последвано от масиви със сурови данни за върхове и стени
КомпресияНекомпресирани структурирани двоични данни или ASCII текст
Поредност на байтовете (Endianness)Задава се в заглавието: 'format binary_little_endian 1.0', 'format binary_big_endian 1.0' или 'format ascii 1.0'
Цветови пространстваRGB/RGBA цветове за всеки връх, Скалари за степен на достоверност, Нормали на повърхността
Канали и структураВърхове, многоъгълни стени, точкови облаци, цветове за всеки връх, нормали и произволни потребителски свойства за сензорни данни
Максимални размериНеограничен брой 3D координати и върхове
ПрозрачностПоддържа се алфа канал за всеки връх чрез свойството 'alpha'
Поточно предаване и прогресивно зарежданеЗаглавието указва точния брой елементи, което позволява предварително заделяне на паметта и бързо последователно прочитане

Техническа сравнителна матрица: PLY спрямо конкуренти

Технически атрибутPLY (Текущ)OBJSTLXYZ
Цвят за всеки връхВградени RGB/RGBA стойности на връхИзисква текстури на материалиНяма (само геометрия)Сурови координатни скалари
Разширяеми свойстваПроизволни потребителски свойства в заглавната частФиксиран синтаксис на таговеФиксиран синтаксис на триъгълнициФиксирани координатни колони
Поддръжка на точкови облациВградена поддръжка на точкови облаци с висока производителностТромаво (изисква лица с един връх)Няма (изисква затворени триъгълници)Вградени сурови координати на точки
Gaussian SplattingЕдин от форматите за данни за Gaussian SplattingНе се поддържаНе се поддържаНе се поддържа

Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни

Софтуерът съобщава: „PLY: End of file reached before all elements read“.

Първопричина: Несъответствие между декларирания брой елементи в заглавната част и действителния брой редове с двоични данни.

Възстановяване: Преизчислете броя на елементите в хедъра с помощта на File2File.app PLY Repair Tool.

Анализ на сигурността и вектори на атака към парсера

PLY декодерите анализират декларации в хедъра, определящи размерите на свойствата, където препълването на цели числа може да доведе до повреда на динамичната памет.

Известни вектори на атака

  • Препълване на цели числа по време на разпределение на паметта за property_count * element_count.
  • Прекомерно четене от буфера при четене на деформирани двоични типове свойства (напр. четене на float64 в буфер за float32).
  • Отказ от услуга чрез прекомерно разпределение на паметта, предизвикано от изкуствено създаден брой елементи.

Най-добри практики за защита: Проверете дали декларираният брой байтове за елементите съответства на действителния размер на файла, преди да заделите памет.

Исторически произход и етапи

2023Gaussian Splatting допринася за популяризирането на работните процеси с точкови облаци, като PLY е един от няколкото формата за съхранение и обмен на данни за сплатове.
2000Проектът Stanford Digital Michelangelo сканира безценни италиански скулптури и ги съхранява във формат PLY.
1994Грег Тюрк създава PLY в Лабораторията по компютърна графика в Станфорд, за да преодолее ограниченията на OBJ.

Основни предимства

  • Форматът е силно разширяем: можете да задавате произволни потребителски свойства (например цвят за всеки връх, степен на достоверност, кривина или температура).
  • Поддържа както компактни двоични данни, така и четим от хората ASCII формат, с байтов ред Big-Endian или Little-Endian.
  • PLY може да съхранява върхове, стени и незадължителни полета за цвят или нормали, затова се използва за точкови облаци и мрежи в приложения за сканиране и фотограметрия. Проверете дали програмата, в която ще отворите файла, поддържа наличните в него полета.

Технически ограничения и минуси

  • Ограничена поддръжка в потребителски 3D двигатели за игри в сравнение с glTF или FBX без специализирани плъгини за точкови облаци.
  • Няма вградена поддръжка за скелетни структури, тегла на костите или йерархии на анимация на герои.
  • Липсват стандартни дефиниции за PBR материали (разчита предимно на оцветяване на върховете или прости дифузни текстури).

Интересни технически факти

  • Всеки валиден PLY файл трябва да започва с точно 4 знака 'ply\n' на ред 1.
  • Известното Станфордско зайче е създадено през 1994 г. чрез сканиране на керамичен заек с лазерен скенер Cyberware 3030 и първоначално е записано във формат PLY.
  • През 2023 г. 3D Gaussian Splatting направи PLY един от най-изтегляните 3D формати в интернет за фотореалистични заснемания с AI.

Често задавани технически въпроси

За какво се използва форматът PLY днес?

PLY се използва широко за 3D Gaussian Splatting, 3D лазерно сканиране, цифрово съхраняване на археологически обекти, фотограметрия и точкови облаци от LiDAR.

Каква е разликата между ASCII и двоичен PLY?

В ASCII PLY стойностите на върховете и стените се записват като четими числа, а в двоичния PLY - като байтове. Двоичният формат обикновено е по-компактен, докато ASCII е по-лесен за преглед в текстов редактор.

Как мога да конвертирам PLY файл в OBJ или STL?

Качете вашия PLY файл в File2File.app, за да го конвертирате в стандартен OBJ модел или подходяща за 3D печат STL мрежа незабавно във вашия уеб браузър.