Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
A
automated_image_processing
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Hyunseok_Sang
automated_image_processing
Commits
8445e794
Commit
8445e794
authored
2 years ago
by
Hyunseok_Sang
Browse files
Options
Downloads
Patches
Plain Diff
여러 서비스들을 조합하여 이미지를 처리하는 Service
parent
e2ae74bf
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
back-end2/src/services/aggregated_services/image_processing_service.py
+37
-0
37 additions, 0 deletions
.../services/aggregated_services/image_processing_service.py
with
37 additions
and
0 deletions
back-end2/src/services/aggregated_services/image_processing_service.py
0 → 100644
+
37
−
0
View file @
8445e794
from
services.padding_service
import
PaddingService
from
services.mask_generantion_service
import
MaskGenerationService
from
services.outpainting_service
import
OutpaintingService
from
services.image_chopping_service
import
ImageChoppingService
from
utils.image.image_resizer
import
ImageResizer
from
utils.image.image_compositer
import
ImageCompister
from
utils.image.image_chopper
import
ImageChopper
class
ImageProcessingService
:
def
process
(
self
,
np_image
,
ratio
=
50
,
recover_size
=
True
,
chop_image
=
True
,
outpainting_size
=
1024
,
removed_border_pixel
=
2
):
if
removed_border_pixel
>
0
:
np_image
=
ImageChopper
().
chop_border
(
np_image
,
removed_border_pixel
)
mask
=
MaskGenerationService
().
detect_mask
(
np_image
)
compsited_image
=
PaddingService
().
add_square_padding_according_to_mask
(
np_image
,
mask
,
ratio
=
ratio
)
pre_outpainted_image
=
compsited_image
.
composited_image
outpainted_image
=
OutpaintingService
().
outpaint_using_dallE
(
pre_outpainted_image
,
outpainting_size
)
#############################################################
if
recover_size
is
True
:
outer_width
=
compsited_image
.
outer_image
.
shape
[
1
]
outer_height
=
compsited_image
.
outer_image
.
shape
[
0
]
outpainted_image
=
ImageResizer
().
resize
(
outpainted_image
,
outer_width
,
outer_height
)
x_offset
=
compsited_image
.
x_offset
y_offset
=
compsited_image
.
y_offset
outpainted_image
=
ImageCompister
().
composite
(
outpainted_image
,
np_image
,
x_offset
,
y_offset
)
else
:
reduction_ratio
=
outpainting_size
*
compsited_image
.
outer_image
.
shape
[
0
]
x_offset
=
int
(
compsited_image
.
x_offset
*
reduction_ratio
)
y_offset
=
int
(
compsited_image
.
y_offset
*
reduction_ratio
)
#############################################################
if
chop_image
is
True
:
processed_image
,
x_offset
,
y_offset
=
ImageChoppingService
().
chop_according_to_mask
(
outpainted_image
,
mask
,
x_offset
,
y_offset
)
return
processed_image
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment