Имя: Пароль:
IT
 
Выбор языка программирования
0 megabax
 
16.03.20
17:31
Добрый день.
Нужно написать программу, которая распознает сканы чертежей и распознанным текстом заполняет форму в Excel.
Какой язык лучше выбрать, C# или Python?
Поделитесь, пожалуйста, вашими мыслями "за" и "против" каждого из этих языков.
1 Fragster
 
гуру
16.03.20
17:32
на данном уровне лучше заказать у ABBYY решение
2 Fragster
 
гуру
16.03.20
17:34
а вообще все равно будешь юзать https://opencv.org/ а оно ко всему подключается, хоть к js
3 megabax
 
16.03.20
17:37
(2) Дык кроме OpenCV я еще разные библиотеки машинного обучения буду юзать. У питона это склерн. У C# всякие WEKA и AForge.net. И что лучше?
Хотя, уже один аргумент за питон склерн я знаю, а  WEKA и AForge.net надо изучать.
4 Fragster
 
гуру
16.03.20
17:38
ну вот и порешили
5 Конструктор1С
 
16.03.20
17:40
(0) а какой язык умеешь?
6 megabax
 
16.03.20
17:42
(5) оба
(4) "ну вот и порешили" - с другой стороны, в питоне еще GUI надо изучать, а в C# я уже знаю.
7 Fragster
 
гуру
16.03.20
17:43
нафига гуи? сделай консольную и прикрути к 1с
8 Fragster
 
гуру
16.03.20
17:43
ну или к веб
9 megabax
 
16.03.20
17:43
А еще в C# полноценное ООП. В Python чуть кастрированная и динамическая типизация переменных
10 Доктор Манхэттен
 
16.03.20
17:55
(7) Тогда лучше сразу писать на 1С
11 Доктор Манхэттен
 
16.03.20
17:55
(8) Тогда лучше сразу писать на JS
12 Доктор Манхэттен
 
16.03.20
17:56
(9) Какая тебе разница на это? Шашечки или ехать, как говорится
13 Sysanin_1ц
 
16.03.20
18:13
(10) А какими средствами ты это напишешь в 1с ?
14 Доктор Манхэттен
 
16.03.20
18:22
(13) В 1С пишут средствами 1С, очевидно.
15 Доктор Манхэттен
 
16.03.20
18:25
Excel и FineReader подключаются что к 1С, что к C# или Питону одинаково, через COM-объект. Поправьте меня, если я ошибаюсь.
16 megabax
 
16.03.20
18:53
(12) Дык когда полноценный ООП удобнее программировать же
17 Garykom
 
гуру
16.03.20
19:20
(0) Без разницы на чем это делать.
Выбирай то что лучше знаешь.

И раздели задачу и обобщи слегка ее.
Надо сканировать некие файлы изображений, вытаскивать/распознавать из них нечто. Это нечто обрабатывать как то. И затем записывать куда то в неком виде/формате.

Т.е. выкинь форматы картинок, и упоминание "Excel" а дальше решай задачу.
Когда решишь уже прикрутить к любым графическим форматам и выходным файлам будет сильно проще.
18 wt
 
16.03.20
20:04
(0) глупости. В 2000-х сделав тех подготовку производства, попытался спецификацию конструкторской документации ввести в разработанную систему. Обратился в FainReader. Пару месяцев с ними сидели , расшифровывали образцы СП. Добились 96% точности. Но остальные 4%, это 4-5 символов на лист а4. Это означало, что будут сидеть бабушки и выверять введённый текст. Отказались от этой затеи. То же самое примерно произошло, уже позже, когда подумали вводить автоматизированно товарные накладные или счета-фактуры, контора, что предлагала решение не гарантировала точность ввода.
Тут, как я понял, об’явился феномен в области программирования. Удачи.
19 Лефмихалыч
 
16.03.20
20:08
(18) сейчас есть такие, которые гарантируют
20 Доктор Манхэттен
 
16.03.20
20:11
(16) Не особо. ООП давно считается устаревшим. Современные программисты предпочитают функциональное программирование.
21 wt
 
16.03.20
20:23
(19) то есть, проверять не надо? Ну, ну.
22 Лефмихалыч
 
16.03.20
20:26
(21) надо. Там просто проверяльщики as-a-service включены в тариф
23 Конструктор1С
 
16.03.20
20:40
(16) удобнее чем что?
24 spock
 
16.03.20
20:48
(0) В этой задаче следующие функциональные блоки в порядке процессинга пайплайне:
1. Классификация входных данных (Multi-label classification) - какой из вариантов чертеж, и чертеж ли;
2. Сегментация области на чертеже с целевым текстом (Instance segmentation) - ищем область, где лежит нужный нам текст, ведь нужен не весь текст с чертежа, а табличка - Основная надпись;
3. Оптическое распознавание Основной надписи чертежа (OCR) - что распознали, то и пишем в Excel, а если нужен результат качественнее, то см. следующие пункты;
4. (optional) Коррекция/Исправление извлеченного текста из Основной надписи чертежа - ну будут ошибки распознавания, надо эти "псевдо-опечатки" исправить;
5. (optional) Распознавание именованных сущностей (Named-Entity Recognition) - извлечение из распознанного текста чего-то осмысленного для заполнения нужных ячеек в Excel'е :-)
25 spock
 
16.03.20
20:49
+24 Вы даже не представляете сколько это будет стоить от Abbyy, тем более, как кастомное решение )
26 Доктор Манхэттен
 
16.03.20
20:50
(23) Удобнее чем процедурное, как раньше учили. Но менее удобно чем функционально-декларативное.
27 vde69
 
16.03.20
21:52
питон - это язык которому уже лет очень много, он отстал от железа просто на несколько поколений... он вообще ни какой в плане функциональности, единственный плюс на нем библиотек много.

решетка - более менее современный язык...
28 v77
 
16.03.20
21:59
(27) Интересно, как питон может отстать от железа. Он ассемблер что-ли какой то :))
29 vde69
 
16.03.20
22:03
(28) например в нем нет поддержки
1. многопоточности
2. многоплатформености
3. ....
30 v77
 
16.03.20
22:05
(24) Зря распинаешься. Автор этой ветки через пару дней создаст еще одну типа "Почему у меня не работает скрипт mytest.py" или "На каком языке лучше написать распознование китайских лиц"
31 Asmody
 
16.03.20
22:06
Тем временем, вся команда npm и сам проект npmjs был куплен гитхабом https://github.blog/2020-03-16-npm-is-joining-github/
Microsoft прибрал к рукам инфраструктуру JavaScript
32 spock
 
16.03.20
22:10
(29) С оговорками:
1. многопоточность есть, но она малопоточная. Народ выкручивается через Popen;
2. linux, windows, mac + https://www.python.org/download/other/
33 spock
 
16.03.20
22:22
(30) давно не писал на 1с-ом форуме, а тут повод предоставился задвинуть про DataScience и ввязаться в питоно-срач )
34 v77
 
16.03.20
22:23
(29) Ну так это язык для быстренько тяп-ляп и готово. Накой ему твои многопоточности.
35 Garykom
 
гуру
16.03.20
22:35
На данный момент есть всего несколько реально многоплатформенных технологий.
Лично я выделяю истинно многоплатформенные это C, Lua, NodeJS и Golang.
Все прочее хрен запустишь на микроконтроллере/одноплатнике/роутере.
36 Garykom
 
гуру
16.03.20
22:36
(35)+ Про PHP забыл, тоже та еще зараза почти везде пролезла.
37 v77
 
16.03.20
22:44
(35) FreePascal еще дофига всякой экзотики поддерживает
38 v77
 
16.03.20
22:45
Free Pascal is a 32, 64 and 16 bit professional Pascal compiler. It can target many processor architectures: Intel x86 (including 8086), AMD64/x86-64, PowerPC, PowerPC64, SPARC, ARM, AArch64, MIPS and the JVM. Supported operating systems include Linux, FreeBSD, Haiku, Mac OS X/iOS/iPhoneSimulator/Darwin, DOS (16 and 32 bit), Win32, Win64, WinCE, OS/2, MorphOS, Nintendo GBA, Nintendo DS, Nintendo Wii, Android, AIX and AROS. Additionally, support for the Motorola 68k architecture is available in the development versions.
39 v77
 
16.03.20
22:48
Сам лично использовал для Win32, Win64, Linux, FreeBSD и WinCE.
40 Garykom
 
гуру
16.03.20
22:58
(38) Из коробки не катит паскаль. И куча граблей и т.д. на редких платформах.

А вот голанга решает те же проблемы и тоже в бинарник компилится но уже на многих платформах в комплекте и банально ставится.
"apt install golang" или "opkg install go"
41 Garykom
 
гуру
16.03.20
22:59
(40)+ В смысле где раньше приходилось использовать и компилировать С, сча можно уже Go и намного проще и быстрее.
42 Garykom
 
гуру
16.03.20
23:01
(41)+ И да сваять "веб-сервер" на паскале это задачка почти уровня сваять на C.
На node же это как и на golang тривиальнейше. Ну и почти все прочее что раньше делали на паскале или си тоже можно.
43 v77
 
16.03.20
23:02
(40) На каких редких? Ты для Nintendo пишешь чтоли? Windows и Linux работает и хватит.
44 v77
 
16.03.20
23:03
(42) я и не призываю на паскале web серверы писать
45 Garykom
 
гуру
16.03.20
23:05
(43) Апельсинки/малинки и прочие роутеры на OpenWRT например.
Или девайсы на андроид.
46 Garykom
 
гуру
16.03.20
23:06
(44) Вот выбор между двумя технологиями одна умеет нечто и веб сервер в комплекте и другая только нечто а веб сложно.
Что выберем?
47 Сияющий в темноте
 
16.03.20
23:14
(46) выбираем ту,у которой размер кода меньше,так как у иалинки памчть не безгранична.
48 Garykom
 
гуру
16.03.20
23:15
(47) zram, swap или берем малинку с 4 гиг памяти ))
49 Garykom
 
гуру
16.03.20
23:17
(48)+ Но да роутер keenetic c 64 ram у меня без swap тупо ушел в ребут без swap при попытке скомпилировать нечто посложнее "привет мир" на голанге.
50 lodger
 
16.03.20
23:29
(49) c gcc такой херни бы не произошло.
51 Asmody
 
16.03.20
23:45
(49) компилировать на роутере? Извращенцы, фубля
52 trdm
 
17.03.20
05:54
(29) > например в нем нет поддержки

а модули "thread" и threading и прочие?
53 Кирпич
 
17.03.20
08:27
(45) да это для шизанутых радиолюбителей. таких один на миллион
54 Восстановленная Проц
 
17.03.20
08:33
C#
55 unbred
 
17.03.20
08:52
(0) отпишись, когда сделаешь.
56 Кирпич
 
17.03.20
08:59
(55) так он уже сделал
57 Garykom
 
гуру
17.03.20
09:05
(53) Неа это для любого программиста полезно.
Умный дом и прочее же.
Вот хочу чтобы как я пришел домой/дома то мой роутер автоматом включал нужные vpn а как ухожу то выключал.
58 Кирпич
 
17.03.20
09:22
(57) "Вот хочу чтобы как я пришел домой/дома то мой роутер автоматом включал нужные vpn а как ухожу то выключал."
вот я и говорю, что для шизанутых радиолюбителей
59 Garykom
 
гуру
17.03.20
09:27
(58) Ну пока умные выключатели стоят дорого, а так удобно же управление светом и всей бытовой техникой самому наваять.
На 1С это гм, на C сложно, на PHP извращенно, а Go мне понравился
60 Кирпич
 
17.03.20
09:36
(59) ты в зимнем дворце живешь что ли или тебе лень два шага шагнуть до выключателя
61 Сияющий в темноте
 
17.03.20
15:51
в зимнем,как раз,проще - хлопнул в ладоши и свечи зажгли.
а вот,чтобы свет сам,когда нужно,без всяких пультов и телефонов-это фантастика.
62 sitex
 
naïve
17.03.20
16:22
(59) Ну умную розетку купить которая по приходу включала роутер не ?
63 Доктор Манхэттен
 
17.03.20
16:27
(61) >> а вот,чтобы свет сам,когда нужно,без всяких пультов и телефонов-это фантастика.

Это не фантастика, а обычный умный дом. Их полно уже готовых, хоть от Сяоми, хоть от Амазона. Тратить свое время на то что уже давно придумано - очень тупо.
64 Garikk
 
17.03.20
16:38
(63) <Тратить свое время на то что уже давно придумано - очень тупо.>

"Все что можно было изобрести - уже изобретено"(c)

в случае с умным домом - есть куда копать, большинство решений всеравно надо напильником пилить очень усиленно
65 Доктор Манхэттен
 
17.03.20
16:42
(64) Не надо. Скорее всего без этого можно логко обойтись, если оно не предусмотрено изготовителем.
А пилить напильником только ради того чтобы пилить напильником - удел несерьезного молодняка, которым еще не совсем понятно что в этой жизни действительно важно, а что нет.
66 Garikk
 
17.03.20
16:47
(65) <можно логко обойтись, если оно не предусмотрено изготовителем. >
"Это вам не нужно" (с) Эппл

помню сказал умному пылесосу через умный дом гугла, пропылесосить комнату...а потом никак не мог отменить...и я до сих пор хз как это сделать и вообще добавить свою команду туда
67 Garikk
 
17.03.20
16:48
(65) и да, это не нужно, я пылесос через приложение запускаю...потому что умный дом это крындец как долго всё организовывать чтобы оно норм работало как надо
68 Доктор Манхэттен
 
17.03.20
16:53
(66) Тут два варианта: Броситься делать свой умный дом, с командой выключения пылесоса, или погуглить как пользоваться готовым. Что было бы быстрее?
69 Garikk
 
17.03.20
16:58
(68) думаешь я не гуглил? гугл славится качеством своей документации, которая или устарела или ее нет
70 Доктор Манхэттен
 
17.03.20
17:23
(69) Погуглил за тебя, первая же ссылка, стандартные команды такие:
Ok Google, start vacuuming
Ok Google, stop vacuuming
71 Garikk
 
17.03.20
17:24
(70)
1) ссылка не на гугл же? вы небось этот список в roomba нашли
2) а если пылесосов два?
3) а если пылесос называется по русски?
72 Garikk
 
17.03.20
17:25
(70)
4) а если указать другую комнату надо?

===

вообщем список можно бесконечно продолжать
73 Доктор Манхэттен
 
17.03.20
18:15
(71) Не знаю что такое румба. Возможно что на конкретную модель пылесоса нужна особая команда. Но на большинстве работает start и stop, судя по результатам поиска.
Если пылесосов два, то по имени нужно называть каким пылесосить или в какой комнате это делать. Хоть по китайски. Только зачем ты его назвал так?
74 Доктор Манхэттен
 
17.03.20
18:16
(72) Как раз в предыдущем сообщении на это уже ответил. Нужно говорить в какой комнате пылесосить, если хочешь чтобы это произошло.
75 Garikk
 
17.03.20
18:22
(73) < Только зачем ты его назвал так>
ага, тоесть мне надо купить пылесос определенной модели (на который есть мануал и гейт работает нормально), называть или номерами или по английски и лучше короткими словами

короче куча геморроя...это техника для людей или люди для техники?
76 Доктор Манхэттен
 
17.03.20
18:34
(75) >> ага, тоесть мне надо ...

Ну конечно. Почему нет?


>> короче куча геморроя

наоборот, куча геморроя будет если ты этого не сделаешь, что ты собственно и получил. Если не нравится, напиши свою прошивку.
Нужно пользоваться тем что дают, а не вставлять палки в колеса самому себе.
Это все равно что купить жигуль, и поехать на нем в озеро, а потом ныть что он не плавает, и приделывать к нему гондолы в гараже. Если много ненужного времени и мало денег и нет работы - то на здоровье, убивай время на всякую хрень.
77 Garikk
 
17.03.20
19:14
(76) <Нужно пользоваться тем что дают, а не вставлять палки в колеса самому себе. >

да, не нужно, нужно лопатить форумы выдумывать хитроумные конфигурации, чтобы все заработало так как описано в рекламных брошюрках, это не вставляние палок в колеса? не убивание времени на всякую хрень?
78 Garikk
 
17.03.20
19:21
весь рынок умных домов, это оголтелый вендорлок и огораживание с запретами..или покупай железки одного производителя или страдай

есть опенсорсные решения на которые можно что угодно натянуть и оно будет работать гораздо лучше, разве что придется чуть больше времени потратить при первоначальной настройке
79 Garykom
 
гуру
17.03.20
19:27
(78) Ничего и туда введут обязательную сертификацию с лицензированием.
И будет как с самодельными автомобилями и самолетами - вроде и можно сделать но хрен поедешь/полетишь.
80 Garikk
 
17.03.20
19:29
(79) в некоторых странах уже так...чтобы дома унитаз починить надо лицензию стантехника иметь, лампочку вкрутить - лицензию электрика

чтобы в таких условиях умный дом собрать, надо пачку дипломов-аттестатов взять
81 Garikk
 
17.03.20
19:30
(79) а в автомобилях, даже не с самодельными, сплошные боль и страдания...софт для Android Auto писать нельзя (или очень-очень-очень ограниченно можно), для ойфонов точно не знаю, но вроде тоже всё запрещено и ограничено
82 Доктор Манхэттен
 
17.03.20
20:44
(78) То есть ты знал что нужно покупать железо одного производителя, но купил у разных, и теперь жалуешься что оно не дружит?
83 Доктор Манхэттен
 
17.03.20
20:49
(80) Это все стереотипы, основанные на том, что в некоторых странах когда люди ставят у себя дома унитазы самостоятельно, а потом затапливают соседей, то им за это не выплачивают страховку, под предлогом что они установили унитаз без лицензии. В России так же, тебе не выплатят страховку если затопишь соседей, даже если унитаз устанавливал сантехник из ЖЭКа, потому что у тебя и страховки то нет. Так что сравнивать нет смысла.
84 Сияющий в темноте
 
17.03.20
21:02
(63) я такого не видел,это "умное" дерьмо может включать свет или по таймеру с различными расчетами солнца или когда темно стало по датчику,а чтобы именно,там где ты находишься,загорался свет,когда он нужен именно тебе-этого нигде нет.
85 Garykom
 
гуру
17.03.20
21:15
(84) Угу причем с самообучением (причем ML аля AI) по отслеживанию кучи показателей, вплоть до положений, действий и состояния объектов в помещениях.
Т.е. если встал с кресла где сидел с лампой настольной то наверно надо включить верхний свет и/или свет в помещении где выход из текущего и т.д.
86 v77
 
17.03.20
21:41
(85) Жили всю жизнь, пальцем выключали и включали. Тут на тебе! Компьютеризация лампочки. Тьфу.
87 v77
 
17.03.20
21:42
Лучше бы изобрели автомобиль на газировке
88 Доктор Манхэттен
 
17.03.20
21:50
(84) Что-то ты путаешь. Умный свет как раз и делает то что ты хотел - включается там где нужно. Полно готовых решений, тот же Амазон. Может даже сигнализировать когда на телефон приходит СМС, для особо глухих.