activeloopai / activeloopai/deeplake

[FEATURE]

Aperta
#2,178 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
C++
Stelle
9.2k
Fork
722
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

## 🚨🚨 Feature Request

- [ ] Related to an existing [Issue](../issues)
- [x] A new implementation (Improvement, Extension)

### Is your feature request related to a problem?

``` python
@deeplake.compute
def resize(sample_in, sample_out, new_size):
## First two arguments are always default arguments containing:
# 1st argument is an element of the input iterable (list, dataset, array,...)
# 2nd argument is a dataset sample
## Third argument is the required size for the output images

# Append the label and image to the output sample
sample_out.labels.append(sample_in.labels.numpy())
sample_out.images.append(np.array(Image.fromarray(sample_in.images.numpy()).resize(new_size)))
sample_out.info.append(sample_in.info.dict())

return sample_out
```
In the above example when new samples are computed we need to make sure all tensors are passed to the sample_out even if it's unmodified. It will be really helpful if we can pipe them directly without explicitly having to get them as numpy or dict.

### Description of the possible solution

``` python
@deeplake.compute
def resize(sample_in, sample_out, new_size):


# Append the label and image to the output sample
sample_out.labels.append(sample_in.labels)
sample_out.images.append(np.array(Image.fromarray(sample_in.images.numpy()).resize(new_size)))
sample_out.info.append(sample_in.info)
return sample_out
```

### An alternative solution to the problem can look like

``` python
@deeplake.compute
def resize(sample_in, sample_out, new_size):


# Append the label and image to the output sample
sample_out.images.append(np.array(Image.fromarray(sample_in.images.numpy()).resize(new_size)))
sample_out.pipe_missing(sample_in)
return sample_out
```
it could also be an additional decorator or an option in the existing decorator.

``` python
@deeplake.compute(pipe_missing=True)
def resize(sample_in, sample_out, new_size):


# Append the label and image to the output sample
sample_out.images.append(np.array(Image.fromarray(sample_in.images.numpy()).resize(new_size)))
return sample_out
```

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.