Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
W
Welspun-Classification
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
CI / CD Analytics
Repository Analytics
Value Stream Analytics
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
dasharatha.vamshi
Welspun-Classification
Commits
ae9d1080
Commit
ae9d1080
authored
Feb 15, 2021
by
dasharatha.vamshi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
changes
parent
12189ac4
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
133 additions
and
135 deletions
+133
-135
scripts/welspun_classifier.py
scripts/welspun_classifier.py
+133
-135
No files found.
scripts/welspun_classifier.py
View file @
ae9d1080
...
...
@@ -209,148 +209,146 @@ class Welspun_Classifier(ModelWrapper):
# log.info("Batch size is {}".format(n))
#
# log.info("Starting inference in synchronous mode")
if
self
.
counter
%
3
==
0
:
start
=
time
.
time
()
res
=
self
.
exec_net
.
infer
(
inputs
=
{
self
.
input_blob
:
images
})
print
(
f
"Inference time: {time.time() - start}"
)
# Processing output blob
# log.info("Processing output blob")
res
=
res
[
self
.
out_blob
]
start
=
time
.
time
()
res
=
self
.
exec_net
.
infer
(
inputs
=
{
self
.
input_blob
:
images
})
print
(
f
"Inference time: {time.time() - start}"
)
# Processing output blob
# log.info("Processing output blob")
res
=
res
[
self
.
out_blob
]
prob
=
self
.
softmax_function
(
res
[
0
])
x
=
[]
x
.
append
(
prob
[
0
])
x
.
append
(
prob
[
1
])
x
.
append
(
prob
[
2
])
x
.
append
(
prob
[
3
])
x
.
append
(
prob
[
4
])
a
=
x
.
index
(
max
(
x
))
# print(type(prob))
# if self.counter%1 == 0:
#
self.counter = self.counter + 1
prob
=
self
.
softmax_function
(
res
[
0
])
x
=
[]
x
.
append
(
prob
[
0
])
x
.
append
(
prob
[
1
])
x
.
append
(
prob
[
2
])
x
.
append
(
prob
[
3
])
x
.
append
(
prob
[
4
])
a
=
x
.
index
(
max
(
x
))
# print(type(prob))
# if self.counter%1 == 0:
self
.
counter
=
self
.
counter
+
1
if
a
==
1
and
x
[
1
]
>
0.95
:
if
self
.
defect_type
==
'Mix'
:
cv2
.
putText
(
frame
,
text
=
"Mix Color Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'Mix'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"Mix Color Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"Mix Color Detected"
,
resized_frame
,
"Mix Color "
+
str
(
prob
[
0
]),
"#472020"
,
"#ed2020"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
# if self.counter % 25 == 0:
# self.send_payload("Mix Color Detected", resized_frame, "Mix Color " + str(prob[0]), "#472020",
# "#ed2020",
# "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
elif
a
==
3
and
x
[
3
]
>
0.95
:
if
self
.
defect_type
==
'Short'
:
cv2
.
putText
(
frame
,
text
=
"Short Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'Short'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"Short Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"Short Tile Detected"
,
resized_frame
,
"Short Tile "
+
str
(
prob
[
2
]),
"#472020"
,
"#ed2020"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
if
a
==
1
and
x
[
1
]
>
0.95
:
if
self
.
defect_type
==
'Mix'
:
cv2
.
putText
(
frame
,
text
=
"Mix Color Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'Mix'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"Mix Color Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"Mix Color Detected"
,
resized_frame
,
"Mix Color "
+
str
(
prob
[
0
]),
"#472020"
,
"#ed2020"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
# if self.counter % 25 == 0:
# self.send_payload("
Short Tile Detected", resized_frame, "Short Tile " + str(prob[2
]), "#472020",
# self.send_payload("
Mix Color Detected", resized_frame, "Mix Color " + str(prob[0
]), "#472020",
# "#ed2020",
# "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
elif
a
==
4
and
x
[
4
]
>
0.95
:
if
self
.
defect_type
==
'Split'
:
cv2
.
putText
(
frame
,
text
=
"Split Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'Split'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"Split Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"Split Defect Detected"
,
resized_frame
,
"Split "
+
str
(
prob
[
3
]),
"#472020"
,
"#ed2020"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
# if self.counter % 25 == 0:
# self.send_payload("Split Defect Detected", resized_frame, "Split " + str(prob[3]), "#472020", "#ed2020",
# "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
elif
a
==
0
and
x
[
0
]
>
0.95
:
if
self
.
defect_type
==
'good'
:
cv2
.
putText
(
frame
,
text
=
"No Defect"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'good'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"No Defect"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"No Defect"
,
resized_frame
,
"no defect "
+
str
(
prob
[
3
]),
"#044b04"
,
"#24dc24"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
# if self.counter % 25 == 0:
# self.send_payload("Split Defect Detected", resized_frame, "Split " + str(prob[3]), "#472020", "#ed2020",
# "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
elif
a
==
2
:
pass
# else:
# logger.info("enter else loop")
# if sum(sum(sum(frame))) == 0:
# pass
# else:
# resized_frame = cv2.resize(frame, (64, 64))
# cv2.putText(frame, text="No Defect", org=(50, 50),
# color=(0, 0, 255),
# thickness=2,
# fontScale=1, fontFace=cv2.LINE_AA)
#
# if self.counter % 25 == 0:
# self.send_payload("No Defect", resized_frame, "No Defect ", "#044b04", "#24dc24", "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
# if prob[0] > 0.9:
# # print("prob--->",prob[0])
# cv2.putText(frame, text="Stitch Detected with Probability :" + str(prob[0]), org=(50, 50),
# color=(255, 255, 255),
# thickness=1,
# fontScale=1, fontFace=cv2.LINE_AA)
# self.send_payload("Stitch Detected", frame, "Stitch " + str(prob[0]), "#472020", "#ed2020", "sound_1")
elif
a
==
3
and
x
[
3
]
>
0.95
:
if
self
.
defect_type
==
'Short'
:
cv2
.
putText
(
frame
,
text
=
"Short Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'Short'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"Short Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"Short Tile Detected"
,
resized_frame
,
"Short Tile "
+
str
(
prob
[
2
]),
"#472020"
,
"#ed2020"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
# if self.counter % 25 == 0:
# self.send_payload("Short Tile Detected", resized_frame, "Short Tile " + str(prob[2]), "#472020",
# "#ed2020",
# "sound_1")
# logger.info(f"Probability: {prob}")
self
.
counter
=
self
.
counter
+
1
print
(
"total time taken to process-------------> "
,
str
(
time
.
time
()
-
starttime
))
# logger.info(f"total time taken to process----------------- {time.time()-starttime}")
# cv2.imshow('res', frame)
else
:
# self.counter = 0
elif
a
==
4
and
x
[
4
]
>
0.95
:
if
self
.
defect_type
==
'Split'
:
cv2
.
putText
(
frame
,
text
=
"Split Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'Split'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"Split Defect Detected"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"Split Defect Detected"
,
resized_frame
,
"Split "
+
str
(
prob
[
3
]),
"#472020"
,
"#ed2020"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
# if self.counter % 25 == 0:
# self.send_payload("Split Defect Detected", resized_frame, "Split " + str(prob[3]), "#472020", "#ed2020",
# "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
elif
a
==
0
and
x
[
0
]
>
0.95
:
if
self
.
defect_type
==
'good'
:
cv2
.
putText
(
frame
,
text
=
"No Defect"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
# pass
else
:
self
.
defect_type
=
'good'
resized_frame
=
cv2
.
resize
(
frame
,
(
64
,
64
))
cv2
.
putText
(
frame
,
text
=
"No Defect"
,
org
=
(
50
,
50
),
color
=
(
0
,
0
,
255
),
thickness
=
2
,
fontScale
=
1
,
fontFace
=
cv2
.
LINE_AA
)
self
.
send_payload
(
"No Defect"
,
resized_frame
,
"no defect "
+
str
(
prob
[
3
]),
"#044b04"
,
"#24dc24"
,
"sound_1"
)
logger
.
info
(
f
"Probability: {prob}"
)
# if self.counter % 25 == 0:
# self.send_payload("Split Defect Detected", resized_frame, "Split " + str(prob[3]), "#472020", "#ed2020",
# "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
elif
a
==
2
:
pass
# else:
# logger.info("enter else loop")
# if sum(sum(sum(frame))) == 0:
# pass
# else:
# resized_frame = cv2.resize(frame, (64, 64))
# cv2.putText(frame, text="No Defect", org=(50, 50),
# color=(0, 0, 255),
# thickness=2,
# fontScale=1, fontFace=cv2.LINE_AA)
#
# if self.counter % 25 == 0:
# self.send_payload("No Defect", resized_frame, "No Defect ", "#044b04", "#24dc24", "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter = 0
# if prob[0] > 0.9:
# # print("prob--->",prob[0])
# cv2.putText(frame, text="Stitch Detected with Probability :" + str(prob[0]), org=(50, 50),
# color=(255, 255, 255),
# thickness=1,
# fontScale=1, fontFace=cv2.LINE_AA)
# self.send_payload("Stitch Detected", frame, "Stitch " + str(prob[0]), "#472020", "#ed2020", "sound_1")
# logger.info(f"Probability: {prob}")
# self.counter= self.counter + 1
print
(
"total time taken to process-------------> "
,
str
(
time
.
time
()
-
starttime
))
# logger.info(f"total time taken to process----------------- {time.time()-starttime}")
# cv2.imshow('res', frame)
return
frame
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment